формы представления звуковой информации
компьютер, имеющий звуковую плату, микрофон и акустическую систему, позволяет кодировать (оцифровывать), сохранять и воспроизводить звуковую информацию.
программы для работы со звуком можно условно разделить на две группы: программы-секвенсоры и программы, ориентированные на цифровые технологии записи звука — звуковые редакторы. midi-секвенсоры предназначены для создания и аранжировки музыки. кроме обычного сочинения музыки эффективное использование секвенсора требует от композитора-аранжировщика специальных инженерных знаний.
с звуковых редакторов звуковые файлы можно редактировать: добавлять голоса или музыкальные инструменты, а также разнообразные эффекты.
существуют программы распознавания речи, появляется возможность компьютером при голоса.
звук — это волна с изменяющейся амплитудой и частотой в диапазоне от 20 гц до 20 кгц. чем больше амплитуда, тем громче звук, чем больше частота, тем выше тон.
микрофон превращает звуковую волну в электрический сигнал, а звуковая плата кодирует его, превращая в последовательность нулей и единиц. точность преобразования определяется разрешающей способностью преобразователя (8 бит — 256 уровней, 16 бит — 65 536 уровней, 24 бита — 16 777 216 уровней) и числом преобразований (выборок) за 1 с — частотой дискретизации. (рис.)
при частоте 8 кгц качество оцифрованного звука соответствует радиотрансляции, а при частоте 44,1 кгц — звучанию аудио-cd. студийное качество достигается при 96 или 192 кгц.
разрешение умножим на число выборок за 1 с и на время:
16 • 20 000 • 2 = 640 000 бит = 80 000 байт = 78 кбайт.
закодированный таким образом звуковой фрагмент может быть сохранен в формате .wav.
в таблице размеры звуковых файлов длительностью звучания 1 с (в килобайтах) при различных разрешениях звуковой карты и частотах дискретизации. для стереозвука размер файла удваивается.
частота дискретизации, кгцразрешение8 бит16 бит24 бит65 53616 777 2167,81315,62523,43823,43846,87570,31344,143,06686,133129,19946,87593,750140,62593,750187,500281,250
var
a:array[1..n,1..m] of integer;
i,j,s,k:integer; p:real;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
begin
for j:=1 to m do
begin
a[i,j]:=random(81)+20;
write(a[i,j]:4);
end;
writeln;
end;
s:=0;
for i:=1 to n do
for j:=1 to m do s:=s+a[i,j];
p:=s/n*0.8;
writeln('p = ',p:5:2);
writeln('Зачислены:');
k:=0;
for i:=1 to n do
begin
s:=0;
for j:=1 to m do s:=s+a[i,j];
if s>=p then begin write(i,' '); k:=k+1; end;
end;
writeln;
writeln('k = ',k);
end.
Пример:
Исходный массив:
58 79 60
96 63 97
90 97 57
29 68 25
38 75 65
54 69 42
44 70 47
39 49 24
27 64 36
68 21 64
p = 137.20
Зачислены:
1 2 3 5 6 7 10
k = 7