формы представления звуковой информации
компьютер, имеющий звуковую плату, микрофон и акустическую систему, позволяет кодировать (оцифровывать), сохранять и воспроизводить звуковую информацию.
программы для работы со звуком можно условно разделить на две группы: программы-секвенсоры и программы, ориентированные на цифровые технологии записи звука — звуковые редакторы. 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
что-то типа этого:
const n = 8, m = 8;
var
A: array[1..n,1..m] of integer;
i, j, sum, product: integer;
isnotnull: boolean;
begin
randomize;
writeln('Случайная матрица:'); for i:=1 to n do begin
for j:=1 to m do begin
A[i,j] := random(51) - 25;
write(A[i,j]:5);
end;
writeln;
end; sum := 0;
for i:=1 to n do
if A[i,n-i+1] < 0 then
sum := sum + A[i,n-i+1];
writeln('Сумма отрицательных элементов побочной диагонали = ', sum); product := 1;
isnotnull := False;
for i:=1 to n-1 do
for j:=2 to n do
if (j > i) and (A[i,j] <> 0) then begin
isnotnull := True;
product := product * A[i,j];
end;
if isnotnull
writeln('Произведение ненулевых элементов в области выше главной диагонали = ', product)
else
writeln('Ненулевых элементов в области выше главной диагонали нет.', product); readln;
end.