-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.task.gda.pl!not-for-mail
From: sundayman <s...@p...onet.pl>
Newsgroups: pl.misc.elektronika
Subject: Re: program do symulacji obróbki audio ?
Date: Mon, 08 Jul 2013 03:29:47 +0200
Organization: CI TASK http://www.task.gda.pl/
Lines: 76
Message-ID: <krd528$mh0$1@news.task.gda.pl>
References: <kr70en$qtq$1@news.task.gda.pl>
<51d707d0$0$1255$65785112@news.neostrada.pl>
<kr71a8$sgg$1@news.task.gda.pl> <kr729t$ufb$2@news.task.gda.pl>
<kr739d$jn2$1@somewhere.invalid> <kr73mj$2k2$1@news.task.gda.pl>
<kr74s6$kcb$1@somewhere.invalid> <kr755s$kec$1@somewhere.invalid>
<kr75l9$75q$1@news.task.gda.pl> <kr76no$977$1@news.task.gda.pl>
<kr7ffk$oma$1@somewhere.invalid> <kr7ngu$h3h$1@news.task.gda.pl>
<kr8g23$69o$1@somewhere.invalid> <kr8ium$ctf$1@z-news.wcss.wroc.pl>
<kra8hb$tpq$1@somewhere.invalid> <krbrh0$toi$1@news.task.gda.pl>
<krc6q0$ro8$1@somewhere.invalid>
NNTP-Posting-Host: terminal-3-178.retsat1.com.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.task.gda.pl 1373247368 23072 195.26.22.178 (8 Jul 2013 01:36:08 GMT)
X-Complaints-To: a...@n...task.gda.pl
NNTP-Posting-Date: Mon, 8 Jul 2013 01:36:08 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130620
Thunderbird/17.0.7
In-Reply-To: <krc6q0$ro8$1@somewhere.invalid>
Xref: news-archive.icm.edu.pl pl.misc.elektronika:649582
[ ukryj 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
- 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
- Litowe baterie AA Li/FeS2 a alkaliczne
- "ogrodowa linia napowietrzna"
- jaki zasilacz laboratoryjny
- jaki zasilacz laboratoryjny
- Puszka w ziemię
- T-1000 was here
- Ściąganie hasła frezem
- Koszyk okrągły, walec 3x AA, na duże paluszki R6
- Brak bolca ochronnego ładowarki oznacza pożar
Najnowsze wątki
- 2025-02-17 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-17 Chrzanów => Programista NodeJS <=
- 2025-02-17 Warszawa => Node.js / Fullstack Developer <=
- 2025-02-17 Białystok => System Architect (Java background) <=
- 2025-02-17 Białystok => Solution Architect (Java background) <=
- 2025-02-17 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-17 Gdańsk => PHP Developer <=
- 2025-02-17 Warszawa => Senior ASP.NET Developer <=
- 2025-02-17 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-17 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-02-17 Odśnieżanie samochodu
- 2025-02-17 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-17 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-17 Pompiarze...
- 2025-02-16 PV teraz