-
1. Data: 2013-07-05 19:34:20
Temat: program do symulacji obróbki audio ?
Od: sundayman <s...@p...onet.pl>
Potrzebuję zrobić następującą rzecz :
Mam plik audio (taki tam sobie sygnał szumowy raczej, ale zróżnicowany w
czasie (modulowany AM powiedzmy) , o niewielkim paśmie - mniej więcej
100Hz - 2kHz .
I chciałbym zrobić symulację uśredniania tego sygnału, znaczy właściwie
poszczególnych próbek;
bierzemy kolejno 3 sample, uśredniamy - i dajemy jako wynik.
i tak dalej.
Przy czym , żeby to działało kołowo , tj;
1. out = (s1 + s2 + s3 ) /3
2. out = (s2 + s3 + s4 ) /3
3. out = (s3 + s4 + s5 ) /3
4. out = (s4 + s5 + s6 ) /3
itp.
I oczywiście potrzebuję to zrobić dla kilku różnych wartości ilości
próbek do uśredniania (2, 5, 10, itp).
Kiedyś robiłem symulacje przetwarzania pliku audio w jakiejś wersji
SPICE, no ale tam chodziło o określony układ elektroniczny (analogowy) -
jak by zrealizować czysto "matematyczny" proces to nawet nie mam pomysłu.
Poza tym dawno to było i już zapomniałem co i jak.
Macie pomysł, jak by to zrobić ? Może jakiś soft jest, gdzie można by
przeprowadzić takie operacje matematyczne na przebiegu ?
Wejściowy plik audio to kilkadziesiąt sekund, mono 48kHz chyba.
Potrzebne mi to do celów demonstracyjnych - żeby pokazać, jak działa
taka procedura (bo mam ją zaimplementowaną w pewnym urządzeniu, ale nie
da się łatwo tego "wyciągnąć" w postaci liczbowej...).
Help ?
-
2. Data: 2013-07-05 19:49:03
Temat: Re: program do symulacji obróbki audio ?
Od: sundayman <s...@p...onet.pl>
> Pure Data?
no no, ciekawe... Zaraz zobaczę co to za dziwo.
Podobnież też matlab by się nadał, ale też nie znam...
-
3. Data: 2013-07-05 19:52:15
Temat: Re: program do symulacji obróbki audio ?
Od: RR <m...@w...pl>
W dniu 2013-07-05 19:34, sundayman pisze:
> Macie pomysł, jak by to zrobić ? Może jakiś soft jest, gdzie można by
> przeprowadzić takie operacje matematyczne na przebiegu ?
Pure Data?
--
rry
-
4. Data: 2013-07-05 20:00:08
Temat: Re: program do symulacji obróbki audio ?
Od: "Ministerstwo Propagandy" <N...@g...pl>
a cool edit pro coś by nie poradził?
-
5. Data: 2013-07-05 20:05:57
Temat: Re: program do symulacji obróbki audio ?
Od: sundayman <s...@p...onet.pl>
W dniu 2013-07-05 19:49, sundayman pisze:
>
>> Pure Data?
fajne, ale mało intuicyjne :)
No nic, czytam tutorial...
-
6. Data: 2013-07-05 20:29:07
Temat: Re: program do symulacji obróbki audio ?
Od: Michał Lankosz <m...@t...pl>
W dniu 2013-07-05 20:05, sundayman pisze:
> W dniu 2013-07-05 19:49, sundayman pisze:
>>
>>> Pure Data?
>
> fajne, ale mało intuicyjne :)
> No nic, czytam tutorial...
>
Zamiast Matlaba możesz użyć Octave - to darmowy odpowiednik Matlaba.
Plik wave wczytuje się jedną komendą do zmiennej - wektora. Potem na tym
wektorze można operować jak na elementach tablicy w C - podobna
składnia, pętle for itd, chociaż środowisko "woli" (ze względu na
szybkość) operacje od razu na całych wektorach lub macierzach. W Twoim
przypadku to chyba nie ma żadnego znaczenia. Narysowanie najprostszego
wykresu to też jedna linijka.
--
Michał
-
7. Data: 2013-07-05 20:29:46
Temat: Re: program do symulacji obróbki audio ?
Od: sundayman <s...@p...onet.pl>
>>>> Pure Data?
Generalnie - rewelacja.
Jako muzyk to stwierdzam dodatkowo :)
No, ale opanowanie tego świetnego narzędzia to mi zajmie duuuużo czasu...
A ja potrzebuję szybko machnąć kilka wykresów - więc wielki dzięki, będę
się tym bawić ale raczej w celach innych niż ten, o który mi teraz chodzi...
> Zamiast Matlaba możesz użyć Octave - to darmowy odpowiednik Matlaba.
> Plik wave wczytuje się jedną komendą do zmiennej - wektora. Potem na tym
> wektorze można operować jak na elementach tablicy w C - podobna
> składnia, pętle for itd, chociaż środowisko "woli" (ze względu na
> szybkość) operacje od razu na całych wektorach lub macierzach. W Twoim
> przypadku to chyba nie ma żadnego znaczenia. Narysowanie najprostszego
> wykresu to też jedna linijka.
No, zaraz zobaczymy :)
-
8. Data: 2013-07-05 20:56:12
Temat: Re: program do symulacji obróbki audio ?
Od: Michał Lankosz <m...@t...pl>
W dniu 2013-07-05 20:29, sundayman pisze:
>
>> Zamiast Matlaba możesz użyć Octave - to darmowy odpowiednik Matlaba.
>
> No, zaraz zobaczymy :)
>
na próbę:
data = [1:1:12]
n=3;
b = ones(n,1)./n;
y = filter(b,1,data)
przetwarzanie wav:
[data,fs] = wavread("sample.wav");
n=3;
b = ones(n,1)./n;
y = filter(b,1,data);
wavwrite(y,"wynik.wav");
gdzie n to liczba uśrednianych próbek. Prawidłowe (dla Ciebie) wartości
wyjściowe zaczynają się od n-tej próbki, bo tu akurat pasował mi filtr
FIR o n współczynnikach, każdy równy 1/n, a filtr ten jest przyczynowy
(tzn bieżąca próbka /wyjściowa/ nie ma wiedzy o przyszłości).
Może być? O to chodziło? Wektor można też uciąć o te kilka próbek...
Średnik na końcu linijki powoduje, że nie wyświetla się w konsoli
zawartość zmiennej (wektora, macierzy). Wszystkie linijki zapisz do
pliku z rozszerzeniem .m, a następnie w konsoli Octave przejdź do
katalogu (komenda cd) i wpisz nazwę tego pliku - skryptu.
Nie próbowałem z plikami wav, ale błędu być nie powinno.
W razie czego http://www.gnu.org/software/octave/support.html - help w
html i pdf.
--
Michał
-
9. Data: 2013-07-05 21:01:22
Temat: Re: program do symulacji obróbki audio ?
Od: Michał Lankosz <m...@t...pl>
W dniu 2013-07-05 20:56, Michał Lankosz pisze:
> W dniu 2013-07-05 20:29, sundayman pisze:
No tak, nie doczytałem, że to ma być symulacja, czyli krok po kroku...
Też da się zrobić, tylko wymaga ze 3 razy tyle linijek.
Ma być na obrazku, czy same liczby?
To teraz.. kto pierwszy?
--
Michał
-
10. Data: 2013-07-05 21:03:12
Temat: Re: program do symulacji obróbki audio ?
Od: sundayman <s...@p...onet.pl>
W dniu 2013-07-05 21:01, Michał Lankosz pisze:
> W dniu 2013-07-05 20:56, Michał Lankosz pisze:
>> W dniu 2013-07-05 20:29, sundayman pisze:
>
> No tak, nie doczytałem, że to ma być symulacja, czyli krok po kroku...
> Też da się zrobić, tylko wymaga ze 3 razy tyle linijek.
> Ma być na obrazku, czy same liczby?
> To teraz.. kto pierwszy?
>
chodzi o obrazek - wygląd przebiegu przed i po uśrednieniem