Звук wave что. Есть ли разница между аудио форматами MP3, AAC, FLAC и какой нужно использовать? Форматы хранения данных без сжатия: FLAC, ALAC, WAV и другие

Представляем вашему вниманию статью с подробным разбором заголовка WAV-файла и его структуры.

Теория

Итак, рассмотрим самый обычный WAV файл (Windows PCM). Он представляет собой две, четко делящиеся, области. Одна из них – заголовок файла, другая – область данных. В заголовке файла хранится информация о:

  • Размере файла.
  • Количестве каналов.
  • Частоте дискретизации.
  • Количестве бит в сэмпле (эту величину еще называют глубиной звучания).

Но для большего понимания смысла величин в заголовке следует еще рассказать об области данных и оцифровке звука. Звук состоит из колебаний, которые при оцифровке приобретают ступенчатый вид. Этот вид обусловлен тем, что компьютер может воспроизводить в любой короткий промежуток времени звук определенной амплитуды (громкости) и этот короткий момент далеко не бесконечно короткий. Продолжительность этого промежутка и определяет частота дискретизации. Например, у нас файл с частотой дискретизации 44.1 kHz, это значит, что тот короткий промежуток времени равен 1/44100 секунды (следует из размерности величины Гц = 1/с). Современные звуковые карты поддерживают частоту дискретизации до 192 kHz. Так, со временем разобрались.

Теперь, что касается амплитуды (громкости звука в коротком промежутке времени). От нее, я бы сказал, зависит точность звука. Амплитуда выражается числом, занимаемым в памяти (файле) 8, 16, 24, 32 бит (теоретически можно и больше). Как известно, 8 бит = 1 байту, следовательно, какая-то одна амплитуда в какой-то короткий промежуток времени в памяти (файле) может занимать 1, 2, 3, 4 байта соответственно. Таким образом, чем больше число занимает места в памяти (файле), тем больше диапазон значений для этого числа, а значит и для амплитуды.

  • 1 байт – 0..255
  • 2 байта – 0..65 535
  • 3 байта – 0..16 777 216
  • 4 байта – 0..4 294 967 296

В моно варианте значения амплитуды расположены последовательно. В стерео же, например, сначала идет значение амплитуды для левого канала, затем для правого, затем снова для левого и так далее.

Совокупность амплитуды и короткого промежутка времени носит название сэмпл.

Теперь таблица, наглядно показывающая структуру WAV файла.

Местоположение Поле Описание
0..3 (4 байта) chunkId Содержит символы “RIFF” в ASCII кодировке (0x52494646 в big-endian представлении). Является началом RIFF-цепочки.
4..7 (4 байта) chunkSize Это оставшийся размер цепочки, начиная с этой позиции. Иначе говоря, это размер файла – 8, то есть, исключены поля chunkId и chunkSize.
8..11 (4 байта) format Содержит символы “WAVE” (0x57415645 в big-endian представлении)
12..15 (4 байта) subchunk1Id Содержит символы “fmt “ (0x666d7420 в big-endian представлении)
16..19 (4 байта) subchunk1Size 16 для формата PCM . Это оставшийся размер подцепочки, начиная с этой позиции.
20..21 (2 байта) audioFormat Аудио формат, полный список можно получить . Для PCM = 1 (то есть, Линейное квантование). Значения, отличающиеся от 1, обозначают некоторый формат сжатия.
22..23 (2 байта) numChannels Количество каналов. Моно = 1, Стерео = 2 и т.д.
24..27 (4 байта) sampleRate Частота дискретизации. 8000 Гц, 44100 Гц и т.д.
28..31 (4 байта) byteRate Количество байт, переданных за секунду воспроизведения.
32..33 (2 байта) blockAlign Количество байт для одного сэмпла, включая все каналы.
34..35 (2 байта) bitsPerSample Количество бит в сэмпле. Так называемая “глубина” или точность звучания. 8 бит, 16 бит и т.д.
36..39 (4 байта) subchunk2Id Содержит символы “data” (0x64617461 в big-endian представлении)
40..43 (4 байта) subchunk2Size Количество байт в области данных.
44.. data Непосредственно WAV-данные.

Вот и весь заголовок, длина которого составляет 44 байта, далее следует блок данных о котором я уже рассказал выше.

На самом деле, понятно, что использованные типы данных можно и менять. Например, в Си (MSVS) вместе массива char можно использовать __int32 или DWORD , но тогда сравнение с какой-либо строковой константой, к примеру может оказаться не очень удобным. Также хотелось бы предостеречь Вас в связи с влияением новой 64-битной моды на программные средства. А именно: всегда стоит помнить, в языке Си тип переменной int в 64-битной системе будет иметь длину 8 байт, а в 32-битной – 4 байта. В таких случаях можно воспользоваться вышеупомянутым типом переменной __int32 или __int64 , в зависимости от того, какой размер переменной в памяти Вам необходим. Существуют типы __int8 , __int16 , __int32 и __int64 , они доступны только для MSVC++ компилятора как минимум 7-й версии (Microsoft Visual Studio 2003.NET), но зато Вы не ошибетесь с выбором размера типа данных.

Файловые форматы MP3 и WAV - в числе самых популярных, что используются для цифровой записи звука. Насколько они схожи друг с другом?

Факты об MP3

MP3 - это мультимедийный файловый формат записи звука. Характеризуется большой универсальностью: его поддерживают практически все современные операционные системы ПК, мобильных девайсов, многие традиционные устройства для проигрывания музыки - MP3- и CD-плееры, проигрыватели, музыкальные центры.

Формат MP3 предназначен для записи аудиоданных со сжатием - намеренным снижением качества звука с целью уменьшения размера файлов. Но если осуществить соответствующую оптимизацию аудиоданных корректно, снижение качества звука будет в большинстве случаев малозаметным для человека.

Формат MP3, возможно, самый популярный в онлайн-пространстве. Но даже до того как интернет приобрел всеобщую распространенность, аудиофайлы соответствующего типа были вполне востребованы: они размещались, благодаря небольшому размеру, на флеш-памяти MP3-плееров или на дисках в большом количестве, часто формируя тематические коллекции аудиозаписей.

Факты о WAV

Формат WAV также используется для цифровой записи звука. В универсальности не уступает MP3 и поддерживается основными типами современных девайсов.

Данный формат предназначен, в свою очередь, для записи аудиоданных без сжатия. Таким образом, размер WAV-файлов практически всегда намного больше, чем MP3 с аналогичным содержимым. По уровню качества WAV-звук приближен к оригинальному - при условии, что он будет воспроизводиться на высокотехнологичном оборудовании.

Формат WAV востребован главным образом в сфере услуг по профессиональной обработке аудио: для фильмов, студийных альбомов, в игровой индустрии - везде, где предполагается работа с высококачественным звуком. Также файлы WAV популярны в среде меломанов, которые, к слову, в большинстве случаев очень легко определяют на слух разницу между мелодиями, записанными в MP3 и WAV.

Сравнение

Итак, основное отличие MP3 от WAV в том, что первый файловый формат предполагает запись звука со сжатием. При этом оно может иметь разную степень и «битрейт» (интенсивность воспроизведения звукового потока). Которые, в свою очередь, во всех случаях одинаковы для WAV-файлов.

Считается, что несжатый звук в формате WAV имеет битрейт порядка 1400 Кбит/сек. По качеству он примерно соответствует аудио, записанному на CD. В свою очередь, битрейт MP3-файлов может варьироваться: максимальный показатель составляет 320 Кбит/сек, минимальный - около 8-16 Кбит/сек. Те значения, что ниже, как правило, обеспечивают неприемлемый уровень качества звука - человек с трудом способен различать ноты в мелодиях, которые записаны в подобном битрейте.

Насколько могут различаться размеры файлов, записанных в формате MP3 и WAV?

Запись звука в MP3 длительностью в 1 минуту при максимальном качестве - 320 Кбит/сек - имеет объем порядка 2 мегабайт. Соответственно, 1 минута аудиопотока в формате WAV сформирует файл величиной около 9 мегабайт.

Таблица

Итак, теперь мы знаем, в чем разница между MP3 и WAV. Зафиксируем основные критерии, предопределяющие соответствующие различия, в небольшой таблице.

WAVE или WAV является короткой формой Wave Audio File Format (реже именуемой как Аудио для Windows). Этот формат является стандартом для хранения аудио потока на ПК. Он является сферой приложения формата RIFF для хранения аудио в «цепочках», это очень напоминает форматы 8SVX и AIFF, используемые компьютерами Amiga и Macintosh соответственно. Это также основной формат на системах Windows для хранения обычного несжатого звука. Как правило, для этого применяется кодирование методом линейной импульсно-кодовой модуляции.

Описание

Как WAV , так и AIFF совместимы с операционными системами Windows, Macintosh или Linux. Формат также учитывает некоторые отличия процессоров Intel, такие как порядок байтов от младшего к старшему. RIFF формат выполняет роль обертки для различных кодеков аудио сжатия.

Несмотря на то, что WAV файл может содержать сжатое аудио, наиболее обычным его применением является хранение как раз несжатого аудио в формате линейной импульсно-кодовой модуляции (LPCM). Стандартным форматом Audio-CD, например, является аудио в формате LPCM, с 2 каналами, частотой дискретизации 44 100 Гц и 16 бит на сэмпл. Так как формат LPCM хранит несжатое аудио, которое абсолютно идентично оригиналу, это позволяет использовать его профессиональным пользователям и аудио экспертам для получения максимального качества звучания. WAV аудио файл также может быть изменен практически в любом аудио редакторе. WAV формат работает со сжатым звуком в системах семейства Windows через Audio Compression Manager (ACM) . Любой ACM кодек может быть использован для сжатия WAV файла. Пользовательский интерфейс для ACM может быть доступен через множество программ, включая и стандартную программу для записи звука в некоторых версиях Windows.

Начиная с Windows 2000, появился заголовок WAVE_FORMAT_EXTENSIBLE, который позволял хранить многоканальные аудио данные, учитывал расположение динамиков, исключал неоднозначности в плане типов сэмпла и размеров контейнера в стандартном WAV формате. Также он поддерживал произвольные расширения формата чанка.

Также существует много несоответствий в формате WAV : например, 8-битные данные являются беззнаковыми, в то время как 16-битные – знаковыми.

WAV файлы могут содержать встроенные IFF «списки», которые могут содержать несколько «подчанков».

Метаданные

Будучи форматом, производным от Resource Interchange File Format (RIFF), WAV -файлы могут быть иметь метаданные (тэги) в чанке INFO. В дополнение к этом, в WAV файлы может быть встроены метаданные стандарта Extensible Metadata Platform (XMP).

Популярность

WAV файлы достаточно большие, что делает этот формат неудобным для обмена по сети Интернет, и это сильно подрывает его популярность. Однако, этот формат – как правило, чаще всего используется для сохранения первозданного вида для файлов высокого качества в таких случаях, где размер свободного дискового пространства не является ограничением. Он также используется в программах для редактирования аудио, где экономят время на сжатии и распаковке данных.

Более часто данные сжимаются с помощью форматов с потерями, такими как Ogg Vorbis , MP3 , ATRAC , AAC , Musepack и WMA , которые используются для хранения и обмена музыки (например, среди пользователей Интернета). Небольшой размер файла и возможность быстро скачивать их также является существенным плюсом наряду с тем, что такие аудио данные занимают намного меньше места. Но форматы с потерями жертвуют качеством ради размера, поэтому их алгоритмы не сохраняют первозданное качество звука во всех деталях. Но существуют и кодеки без потерь, такие как FLAC , Shorten, Monkey’s Audio , ATRAC Advanced Lossless , Apple Lossless , WMA Lossless , TTA, WavPack , но ни один из этих кодеков нельзя назвать общепринятым.

Использование формата WAV является общепринятым, благодаря его простоте и простой структуре, которая в большой степени основана на формате файлов RIFF. Благодаря этому, формат WAV не испытывает притеснения среди различного программного обеспечения или аппаратных плееров, он поддерживает практически везде.

Назло огромному размеру данных несжатого WAV , этот формат иногда используется для радиовещания, особенно для адаптированных безкассетных систем. Радио BBC (BBC Radio) в Соединенном Королевстве использует 44.1 кГц, 16 бит, стерео аудио данные как стандарт в их системе VCS. Система ABC “D-Cart”, которая разработана Австралийским радиовещателем, использует 48 кГц, 16 бит, стерео аудио данные, что идентично цифровым аудио кассетам (DAT).

    Ну вообще-то можно конечно использовать IrDA для приема команд с обычных ИК пультов, но с очень большими ограничениями. Работает далеко не со всеми пультами. Стабильность распознавания команд очень низкая. Если использовать IrDA встроенный в материнскую плату, то нужно колдовать с драйверами, если внешний, то нужно удалять драйвера или периодически перетыкать приемник в другой СОМ порт. USB IrDA вообще использовать невозможно, так как к нему нельзя обратиться напрямую как к СОМ порту (не путайте с виртуальным СОМ портом).

    По многочисленным просьбам был написан плагин для СОМ IrDA, подробнее о всех ограничениях и сложностях использования см. на ...

    17.06.2017, 23:04

    Журнал «Электронные компоненты» №2 2002 г.
    Александр Зайцев

    Многие бытовые приборы, системы ограничения доступа, промышленное оборудование и другие устройства имеют в своем составе пульт дистанционного управления, что существенно дополняет сервисные функции выпускаемого изделия. Фирма Holtek разработала семейства микросхем дистанционного управления (ДУ), отличающиеся друг от друга по формату передаваемых данных, количеству бит адреса и данных в посылке, по условию начала генерации посылки; набору сервисных функций. Все выпускаемые микросхемы ДУ выполнены по КМОП технологии с минимальным потребляемым током. Они ориентированы для передачи кодовой посылки по инфракрасному или радиоканалу связи, с минимальным числом внешних компонентов схемы. Широкий диапазон напряжений питания и рабочей температуры позволяют применять микросхемы ДУ Holtek в большинстве приложений.
    Микросхемы ДУ фирмы Holtek можно разделить на три основные группы:

    1. Семейства микросхем кодеров/декодеров.
    2. Микросхемы для пультов ДУ телеаппаратуры.
    3. Микросхемы бесконтактной идентификации.
    В первую группу входят семейства микросхем кодеров/декодеров, основным свойством которых является устанавливаемое с помощью переключателей, внешней схемой или программно значение адреса и данных. Кодер формирует кодовую последовательность после появления активного уровня сигнала на выводе TE или сигнала низкого логического уровня на входах данных (DATA). Генерация кодовой посылки продолжается до тех пор, пока присутствует активный уровень сигнала. Посылка всегда генерируется полностью, даже если активный уровень сигнала был снят. В некоторых микросхемах кодеров предусмотрено управление количеством повторений кодовой последовательности после снятия активного уровня сигнала, что может быть необходимо для достоверного детектирования посылки. Кодовая последовательность может состоять из комбинации следующих полей: преамбула; синхронизирующие биты; адрес; данные; биты антикода.
    Декодер обрабатывает кодовую последовательность, полученную из канала связи, последовательно обрабатывая несколько посылок. Если все посылки имели одинаковое значения полей, и адрес кодера совпал с адресом декодера, будет сформирован сигнал о принятой команде (вывод VT). В декодерах, имеющих выводы данных, информация из поля данных декодированной посылки, передается в соответствующие выходные защелки.
    К наиболее простым семействам микросхем ДУ этой группы можно отнести кодеры/декодеры 2 12 (см. таблицу 1). В состав кодовой последовательности, генерируемой кодерами этого семейства, входит преамбула, синхронизирующий бит и 12-разрядное после адреса/данных (рис. 1). Каждый вывод адреса/данных кодера может быть подсоединен к V ss (логический нуль) или оставлен не подсоединенным (логическая единица). Для микросхемы HT12E кодовая последовательность формируется в виде логических уровней, а для HT12A в виде пачки импульсов с частотой 32 кГц (рис. 2).
    >

    Рис. 1. Кодовая последовательность семейства кодеров/декодеров 2 12

    >

    Рис. 2. Представление битов в кодовой последовательности микросхем HT12E и HT12A

    ...

    17.06.2017, 23:03

    Традиционная схемотехника линейных усилителей на полевых транзисторах с затвором в виде р-п-перехода (в дальнейшем для краткости называемом р-п-затвором) предусматривает в основном режим, когда рабочая точка находится в области обратного (закрывающего) смещения, т. е. при Uотс Проведенные автором исследования показали, что использование режима, в котором рабочая точка может находиться в зоне открывающего смещения, позволяет существенно упростить схемы узлов на полевых транзисторах. Применение таких схем рационально в тех случаях, когда требование минимальности числа элементов оправдывает необходимость подборки некоторых из них, т. е. в радиолюбительской практике и при разработке особо миниатюрных конструкций.
    На рис. 1 представлены обобщенные сток-затворная и входная характеристики полевого транзистора с р-п-затвором. На этих вольт-амперных характеристиках - Iс=f(Uвх) и Iз=f(Uвх) - можно выделить три характерных зоны: 1 - закрывающего смещения Uзи, 2 - открывающего смещения, при котором ток затвора практически отсутствует, и 3 - открывающего смещения, обусловливающего существенный ток затвора.
    Четкой границы между зонами 2 и 3 нет, поэтому для определенности примем в качестве условной границы между ними ординату, соответствующую току затвора 1 мкА - при таком токе сопротивление затвора еще весьма велико, и это значение может быть сравнительно просто измерено. Обозначим также символом Im ток стока на этой границе и прямое напряжение на затворе Um. При напряжении Uзи, большем граничного, ток затвора начинает резко увеличиваться и полевой транзистор теряет свое основное достоинство - высокое входное сопротивление. Поэтому работу в зоне 3 не рассматриваем.
    Из изложенного ясно, что нет необходимости полностью исключать работу полевого транзистора в зоне прямого смещения, вполне достаточно, чтобы рабочая точка не переходила в зону 3, т. е. было выполнено условие Uзи КП302ГМ до 0,55 В для КП303А .
    Несмотря на то, что расширение рабочего интервала напряжения Uзи из-за добавления зоны прямого смещения по абсолютной величине невелико, оно имеет очень важное значение, поскольку позволяет несколько иначе подойти к схемо-технике полевых транзисторов.
    Как видно из рис. 1, сток-затворная характеристика переходит в зону 2 плавно, без излома. Суть физических процессов в транзисторе заключается в том, что при подаче на затвор прямого напряжения смещения происходит расширение канала и проводимость его увеличивается, транзистор начинает работать в режиме обогащения. Легко заметить, что с учетом зоны прямого смещения транзистор с р-п-затвором становится аналогичным по характеристикам транзистору с изолированным затвором и встроенным каналом, который способен работать при прямом и обратном смещении на затворе.
    Отличие носит лишь количественный характер - у первого из них рабочая область зоны прямого смещения короче, так как ограничивается значением Um. Поэтому полевой транзистор с р-п-затвором можно применять в режимах, которые считались возможными только для транзисторов с изолированным затвором и встроенным каналом.
    Наличие у транзисторов с изолированным затвором серьезных недостатков - значительного разброса характеристик, малой стойкости к действию статического электричества и ряда других - резко ограничивает область практического применения этих приборов даже при допустимости их индивидуальной подборки. Номенклатура выпускаемых в настоящее время транзисторов с р-п-затвором значительно шире, чем с изолированным, они более доступны и имеют меньший разброс характеристик. По указанным причинам транзисторы с р-п-затвором следует считать более предпочтительными.
    Рассмотрим некоторые варианты применения этих транзисторов с использованием режима прямого смещения на затворе. На рис. 2, а изображена схема линейного усилителя. Применение режима работы без начального смещения позволило исключить резистор автоматического смещения и блокировочный конденсатор в цепи истока транзистора VT1. Расчет ступени по постоянному току упрощается и сводится к определению сопротивления нагрузочного резистора R2 по формуле:
    R2=(Uпит-Uвых о)/Io
    где Uвых о - напряжение на выходе при отсутствии входного сигнала, a Iо - начальный ток транзистора.
    При выборе Uвых o= 0,5 Uпит формула (1) упрощается и принимает вид: R2=Uпит/2Iо.
    При разработке усилителей по этой схеме следует учитывать, что для транзисторов с начальным током стока в несколько десятков миллиампер возможно превышение их допустимой мощности.
    Если необходимо уменьшить коэффициент усиления, в цепь истока включают резистор R3. Следует подчеркнуть, что в этом случае блокировочный конденсатор включать нельзя. Режим по переменному току рассчитывают по известным формулам; коэффициент усиления находят из выражения Кu= S R2, где S - крутизна характеристики транзистора. Очевидно, что при Кu>10 в большинстве случаев усиление выходного сигнала по амплитуде до Uпит происходит при Uвх КП303А при Io=1,1мА, Uпит=12B, Uвых=6 В и R2=5,1 кОм показали, что Кu=10.
    При необходимости увеличить допустимую амплитуду положительных значении напряжения на входе свыше Um в цепь истока требуется вместо резистора R3 включить диод (катодом к общему проводу). Напряжение прямого смещения для кремниевых диодов может находиться в пределах 0,4...0,8 В (в большинстве случаев 0,5...0,7 В) в зависимости от типа диода и тока истока транзистора. Для германиевых диодов аналогичные значения равны 0,2...0,6 В (0,3...0,5 В). При включении диода ток стока из-за закрывающего смещения уменьшается, поэтому для обеспечения прежнего режима по постоянному току необходимо увеличить сопротивление резистора R2. Это, в свою очередь, приводит к увеличению К„, так как крутизна уменьшается незначительно. Поскольку динамическое сопротивление диода мало, шунтиро-вание его конденсатором малоэффективно. Введение диода вызывает небольшое - не более чем на 10 % - уменьшение усиления.
    Режим такой ступени по постоянному току рассчитывают по формуле (1), в которую вместо Io подставляют Ioд - ток стока при включенном в цепь истока диоде. Уменьшить при необходимости Кu можно включением последовательно с диодом резистора обратной связи.
    Несмотря на наличие дополнительного диода, реализация такой схемы в ряде случаев является оправданной и по той причине, что приводит к уменьшению потребления тока и увеличению коэффициента усиления. Эти свойства особенно ценны для устройств с автономным питанием.
    Как видно из изложенного, по работе ступень с диодом близка к классической с резистором смещения. Основное преимущество - отсутствие блокировочного конденсатора, что приводит также к расширению снизу рабочей частотной полосы вплоть до постоянного тока. Кроме того, упрощается расчет и налаживание устройств.
    При работе этой ступени с трансформатором, катушкой связи, воспроизводящей головкой магнитофона и другими подобными источниками сигнала резистор R1 утечки не требуется и схема принимает предельно простой вид, показанный на рис. 2, б.
    Рассмотренная выше возможность работы полевого транзистора с р-п-затвором при прямом смещении может быть эффективно применена и для построения другого важного класса устройств - истоковых повторителей. На рис. 3, а представлена традиционная схема истокового повторителя на транзисторе VT2. Основной недостаток этого узла - сравнительно узкие пределы выходного напряжения. От этого недостатка свободен традиционный эмит-терный повторитель (VT2, рис.3, б); кроме того, в нем меньше деталей. Но у эмиттерного повторителя сравнительно низкое входное сопротивление: Rвх=h21эRэ (h21э - статический коэффициент передачи тока транзистора; Rэ - сопротивление резистора в цепи эмиттера).
    Все отмеченные противоречия полностью устраняются при прямом включении истокового повторителя, как показано на рис. 3, в. Здесь удачно сочетаются достоинства истокового и эмиттерного повторителей. Практического применения эта схема не находила, видимо, потому, что невозможно избежать прямого напряжения смещения на затворе. Но этого и не требуется, достаточно исключить работу транзистора в области прямого тока затвора (в зоне 3 на рис. 1). Эта задача решается довольно просто, что и позволяет применять такую схему на практике.
    Передаточная характеристика истокового повторителя определяется общим выражением: Uвых=Uo+UвxKп, (2) где Uo - начальное выходное напряжение при Uвх=0; Kп - коэффициент передачи истокового повторителя.
    Для работы повторителя в области закрывающего смещения на затворе необходимо, чтобы условие Uз Фактически же реальные требования менее жестки, так как достаточно выполнения более простого условия: Uси Uпит (Rи -сопротивление резистора в цепи истока). Учитывая ориентировочный характер расчета по этой формуле, отсутствие тока затвора при Uз=Uпит, следует проверить при макетировании узла микроамперметром с током полного отклонения стрелки не более 100 мкА. Выходное напряжение такого истокового повторителя находится в пределах Uo...(Uпит-Uси).

    Экспериментально снятые при Uпит=12B зависимости Uвых=f(Uвх) для транзисторов КП303А и КП303Е при разных значениях сопротивления Rи показаны на рис. 4. Как видно из графиков, возможно обеспечить линейность передаточной характеристики в пределах от Uвыхо (при Uвх=0) до (Uпит- -1) В. Для расширения этого участка следует, в первую очередь, уменьшить Uo, для чего нужно применять транзисторы с минимальным значением Uотc, а затем подобрать оптимальное сопротивление резистора Rи (R2-на схеме рис. 3, в). Звездочкой на графиках отмечены точки, где ток Iз достигает значения 1 мкА.
    В качестве примера практического применения описанного режима линейного усиления на рис. 5 изображена схема двуканального смесителя сигналов 3Ч; вообще же число каналов ничем не лимитировано и может быть любым. Сопротивление резистора R3 определяют по формуле (1), в которую вместо Io подставляют Iод n, где n - число каналов.

    В устройстве желательно применять транзисторы с близкими значениями Uотс и Io (или Iод), однако вполне допустим разброс этих параметров до 50...100 %, так как разницу усиления по каналам легко компенсировать входными регуляторами R1, R5. Следует обязательно проверить, чтобы ни один из каналов не входил в режим амплитудного ограничения в рабочем интервале входного напряжения. При использовании кремниевого диода допустимая амплитуда положительной полуволны на затворе каждого полевого транзистора - не менее 1 В.
    При работе одного канала при напряжении питания Uпит=9 В, выходном напряжении Uвых=0,1 В (действующее значение), частоте сигнала fс=0,1 кГц коэффициент усиления смесителя примерно равен 3, а по уровню нелинейных искажений он не уступает построенному по классической схемотехнике....

В первую очередь, говоря об этом формате, нужно отметить, что он является подразделением другого формата - RIFF (Resource Interchange File Format - Формат Файлов Обмена Ресурсами). По сути RIFF - это общая спецификация, под которой может быть объединено много разныx форматов файлов. Главное преимущество RIFF - расширяемость. Форматы файлов, базирующиеся на RIFF, могут быть впоследствии усовершенствованы, в то время, как "старое" программное обеспечение будет благополучно игнорировать все изменения формата.

Все RIFF-базированные файлы делятся на секции, каждая из которыx идентифицируется определенным "словом". На настоящий момент в WAV-файле такиx секций может быть до шести. Разрабатываемые программы должны ожидать (и игнорировать) все неизвестные (разработчику) секции данныx, используя только то, что необxодимо. Однако есть две обязательные для любого WAV-файла секции: "Формат" и "Данные", причем "Формат" должен быть объявлен до появления "Данныx".

Теперь покончим с лирическими отступлениями и займемся непосредственно битами и байтами.

Немного объясню семантику последующиx идентификаторов: здесь используется так называемая Венгерская нотация, которая состоит в том, что в начале имени каждой переменной ставятся буквы, поясняющие ее тип:

b - byte (1 байт);

w - word (2 байта);

dw - double word (4 байта), и т.п.

Итак, заголовок файла выглядит следующим образом:

"RIFF" - сигнатура RIFF.

dwFileLength - длина всего файла, без учета восьми уже прочитанныx байт.

Секция формата данныx:

"fmt " - 4 байта сигнатуры "format" (после "fmt" следует пробел).

dwFormatLength - длина секции формата данныx без учета этиx 4 байт.

wFormatTag - определяет категорию формата звуковыx данныx.

0101h - IBM mu-law;

0102h - IBM a-law;

0103h - IBM AVC ADPCM.

wChannels - число каналов: 1 (моно) или 2 (стерео).

dwSamplesPerSec - частота дискретизации (количество сэмплов, воспроизводимыx в секунду).

dwAvgBytesPerSec - число байт данныx,передаваемыx в секунду.

(Используя это значение, воспроизводящее ПО может рассчитывать размер буфера данныx)

wBlockAlign - длина блока данныx, выравненная на границу байта

(Может быть использовано для выравнивания буфера данныx.)

В случае wFormatTag=1 (данные в формате PCM), добавляется одно поле:

wBitsPerSample - число бит для представления одного сэмпла.

При нестандартныx значенияx длины сэмпла следует иметь в виду правило: каждый сэмпл содержится в некотором целом числе байт, наименее значащий из которыx пишется первым. Если представить все байты сэмпла как единое число, то сама амплитуда содержится в старшиx битаx числа и длина ее определяется wBitsPerSample. Для пущей ясности приведу пример: длина сэмпла - 12 бит, тогда значение амплитуды сигнала содержится в двуx байтаx, причем младшие 4 бита младшего (первого по счету) байта равны нулю.

Секция представления данныx:

"data" - сигнатура секции.

dwDataLength - длина данныx, представляющиx форму сигнала

(фактически, длина оставшейся части секции "data").

Секция "FACT" (необязательная):

dwFactLength - длина данной секции.

dwSamples - число сэмплов в файле.

Секция "FACT" в принципе актуальна для форматов представления звука, использующиx сжатие. В обычныx PCM-кодированныx файлаx она, в описанном виде, не привносит никакой дополнительной информации. Другое дело, что со временем в секцию могут быть внесены дополнения, которые на сегодняшний день тоже должны быть учтены разработчиками ПО.

Описанные три секции представляют, конечно, далеко не исчерпывающее описание формата WAVE. Копаясь в WAV"аx, можно найти кучу другиx сигнатур. Например, "slnt" (описание тишины), "cue" (разбиение файла на части), "plst" (установление порядка проигрывания частей, определенныx в "cue") и т.п. В эти и другие секции, равно как и в саму структуру WAVЕ-файла, могут вноситься разные дополнения и модификации. В такой расширяемости и состоит суть RIFF. Но, повторюсь еще раз, мыслящий программист учитывает и игнорирует неизвестные ему места формата.

И в заключение предлагаю рассмотреть реальный файл. Возьмем, к примеру, стандартный звук Windows - "chimes.wav". Вот его структура.




Top