-
Data: 2013-07-08 03:29:47
Temat: Re: program do symulacji obróbki audio ?
Od: sundayman <s...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]
Ostatecznie mam takie coś :
[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=44; % 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=30; % ilość próbek uśredniania
b = ones(n,1)./n;
y = filter(b,1,data3);
% składanie WAV
data4 = [];
for i=1:length(y)
probka = y(i:i);
for j=1:a
data4 = [data4,probka];
endfor
endfor
wavwrite(data4.', 44100 , "wynik_n30.wav");
*************************************
No muszę powiedzieć - działa :)
Nawet chyba udało mi się zrobić, żeby wynikowy wav miał tą samą
długość,co wejściowy (rozciągnąłem po prostu z tym samym
współczynnikiem, o który się skraca w wyniku znajdowania wartości
maksymalnej).
Teraz mogę sobie testować w te i wefte na różnych parametrach - no coś
pięknego. I z tego co widzę, to się nawet chyba zgadza z empirią :)
Panie Michale, jest pan wielki ! Zazdroszczę znajomości tego narzędzia -
coś mi cholerycznie ciężko nad tym zapanować, ale warto się pomęczyć.
Tak że - słów podziękowań brak mi po prostu :)
Oczywiście pozostałym kolegom także dziękuję bardzo.
*************************************
Na wszelki wypadek zapytam jeszcze na koniec ;
jak widać zmieniłem tą linię :
data2 = max(data1(i:i+a))); * gdzie oczywiście "a" to przedział
szukania maximum (zastąpiłem "10" z przykładu kolegi zmienną "a" , żeby
mieć łatwiej w razie zmian wartości)
na następującą wersję :
data2 = max(data1(i:i+(a-1)));
bo wydaje mi się, że w wersji "źródłowej" robi się zakres o 1 za duży
(np. dla przedziału 10 zakres byłby 10:20 zamiast wymaganego 10:19).
Wygląda mi to na po prostu drobną pomyłkę kolegi, ale wolę się upewnić -
czy wszak dobrze zrobiłem ?
Następne wpisy z tego wątku
- 08.07.13 08:15 Michał Lankosz
Najnowsze wątki z tej grupy
- stara idea nowe hardware
- Dzwonek gong z transformatorem
- espnow przerywa na jeziorze?
- 8080
- Portowanie CP/M
- radyjko
- Re: Basen i chłodzenie w w wentylacji mechanicznej
- Akumulatory VRLA
- ładowarka zmarła
- Podstawa bezpiecznikowa jako rozłącznik DC
- Napięcie akumulatora wyłączające UPS / jakie nowe akumulatory do UPS?
- nawigacja satelitarna
- SmartLife/Tuya i osuszanie -- mordowanie z zimną krwią...
- Głośnik piezoelektryczny
- Mala autonomiczna kamera monitoringu
Najnowsze wątki
- 2024-07-17 Lublin => Full Stack Java Developer <=
- 2024-07-17 Lublin => Java Full Stack Developer (+Angular) <=
- 2024-07-17 Turek => IT Project Manager (experience with C#) <=
- 2024-07-17 Warszawa => Mobile React Native Developer <=
- 2024-07-05 eSIM na czym polega
- 2024-07-15 Roaming poza unią
- 2024-07-16 Jak tanio dzwonic do Wielkiej Brytani?
- 2024-07-16 Dzień bez ICE
- 2024-07-15 Spalinówki płoną doszczętnie
- 2024-07-15 Pojemność akumulatora
- 2024-07-15 Elektryk8i dalej płoną.
- 2024-07-15 Motodziennik #284 NOWY MG HS z hybrydą oraz wraca FORD CAPRI (jako SUV)
- 2024-07-14 [FILM] SAMOCHODY ELEKTRYCZNE DO WIELKIE ŚCIEMA? TYLKO FAKTY!
- 2024-07-14 Znieczulica w narodzie
- 2024-07-13 Protect Your PC with IObit Malware Fighter Pro 11.3.0.1346 Multilingual