-
Data: 2013-07-07 15:40:50
Temat: Re: program do symulacji obróbki audio ?
Od: sundayman <s...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]
> Wszystko racja lub zapewne racja. Wyszedłem z wprawy, do tego dochodzą
> naleciałości z C. Myślę, że dla sundymana moje przykłady mogą być
> bardziej przejrzyste, chociaż zdaję sobie sprawę z kiepskości tej
> implementacji.
Tak jest właśnie - jest to dla mnie ciut bardziej zrozumiałe :)
Jak napisałem, na ręcznie wprowadzonych danych generalnie jest ok,
natomiast przy próbie wygenerowania WAV już jest gorzej.
Mam tak :
[data,fs] = wavread("audio.wav");
%data =
[2,6,3,8,4,6,15,20,40,20,25,98,17,34,5,23,5,3,35,44,
23,17,19,16,2,3,8,4,7,4];
len = length(data);
data1 = abs(data)
data3 = [];
a=10; % ilość próbek do wartości max
for i=1:a:length(data1)-a
data2 = max(data1(i:i+(a-1)));
data3 = [data3, data2];
endfor
% uśrednianie
n=2; % ilość próbek uśredniania
b = ones(n,1)./n;
y = filter(b,1,data3);
wavwrite(y,"wynik.wav");
%t = [1:length(data1)];
%plot(t,data1,"b*-")
%t2 = [1:length(data3)];
%plot(t,data1,"b*-", t2*a,y, "r*-") % to odblokować
%stem(t,[data', y']);
***************************
i teraz, dla a=10 jak powyżej, wywala mi błąd, że
"Y has more than 32767 columns, too many for WAV-file"
tego akurat nie rozumiem. Znaczy chodzi o to, że wartość wykracza poza
dopuszczalne 16 bitów ? Ale jakim cudem, bo przecież nie powinno być
więcej niż jest maksymalnie w audio.wav ?
Jak zwiększę a=100 to wtedy niby generwuje ten WAV, ale nie daje się on
otworzyć. Wieczorem spróbuję powalczyć, bo w sumie to chciałbym zrobić
tak, żeby niezależnie od wyboru "a" i "n" WAV wygenerowany był takiej
samej długości jak źródłowy.
Czyli trzeba by powielać dane wyjściowe i posklejać je w jeden wav.
Próbki będą znaczy się powtarzać, ale dzięki temu będzie można
ładnie porównać obie "fale" i posłuchać także..
Następne wpisy z tego wątku
- 07.07.13 18:59 Michał Lankosz
- 08.07.13 03:29 sundayman
- 08.07.13 08:15 Michał Lankosz
Najnowsze wątki z tej grupy
- Cewka elektrozaworu
- zapytanie o chip r5f21275nfp
- nie naprawiam więcej telewizorów
- Zrobił TV OLED z TV LCD
- Zasilacz USB na ścianę.
- Gniazdo + wtyk
- Aliexpress zaczął oszukiwać na bezczelnego.
- OpenPnP
- taka skrzynka do kablowki
- e-paper
- 60 mA dużo czy spoko?
- Dziwne zachowanie magistrali adresowej w 8085
- Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- Jaki silikon lub może klej?
- Smar do video
Najnowsze wątki
- 2025-03-11 Warszawa => Kierownik ds. kluczowych Klientów <=
- 2025-03-11 Łódź => System Administrator (Linux, Active Directory) <=
- 2025-03-10 roaming
- 2025-03-10 wodor
- 2025-03-10 Ostrów Wielkopolski => NodeJS Developer <=
- 2025-03-10 Białystok => System Architect (background deweloperski w Java) <=
- 2025-03-10 Częstochowa => Backend Developer (Node + Java) <=
- 2025-03-10 Poznań => Konsultant wdrożeniowy Comarch XL (Logistyka, WMS, Produkc
- 2025-03-10 Bydgoszcz => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2025-03-10 China-Kraków => Senior PHP Symfony Developer <=
- 2025-03-10 Chiny-Kraków => Senior PHP Symfony Developer <=
- 2025-03-10 Szczecin => Key Account Manager IT <=
- 2025-03-10 Warszawa => Node.js / Fullstack Developer <=
- 2025-03-10 Warszawa => Data Engineer (Tech Leader) <=
- 2025-03-10 Gliwice => Business Development Manager - Network and Network Security