Какой кодек это
У меня есть сжатый файл, размер которого равен 728, и каким-то образом я знаю, что это аудиофайл и он длится 1040 мс
Сжатая структура файла прямо:
Он формируется с 14-байтовыми блоками, каждый блок начинается с 0x0C:
0c xx xx xx xx xx xx xx xx xx xx xx xx xx x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x xx xx xx xx xx xx xx xx xx x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x xx 0c xx xx xx xx xx xx xx xx xx xx xx xx xx
(xx) может быть любым шестнадцатеричным числом
Здесь вы можете скачать сжатый двоичный файл:
http://dusijun.files.wordpress.com/2013/02/29-aud-bin.doc (переименуйте в *.aud)
Или текстовое представление в формате doc
http://dusijun.files.wordpress.com/2013/02/29-aud.doc
Нет заголовка и метаинформации. Количество блоков зависит от продолжительности фактического звука.
Длительность звука до размера файла составляет около 1,42.
например,
Если размер файла = 9506, тогда звук может длиться до 9506 * 1.42 = 13580 мс около 13 S
Кто-нибудь знает, какой кодек может быть?
PS:
Двоичный файл - аудиофайл WeChat (ios).
REF
1) Как я могу извлечь/воспроизвести файлы .aud?
http://www.boards.ie/vbulletin/showthread.php?t=2055891600
2) WeChat ios
https://itunes.apple.com/us/app/wechat/id414478124?mt=8
Ответы
Ответ 1
Я бы заподозрил, что это речевой кодек. Например RFC6716 и OPUS.
Битовая скорость для этого кодека 8-12 кбит/с для речи NB. 0x0c
соответствует конфигурации SILK
для размера кадра 20 мс.
| 0... 3 | SILK-only | NB | 10, 20, 40, 60 мс |
Размер кадра 20 мс дает около 14 бит. Я попытался сохранить образец как 29-aud-bin.opus и открыть его в Firefox, но ему не хватает этого заголовка, который есть в других файлах opus. Версия кодека SILK
также используется Skype.
Ответ 2
Какой кодек это? Как-то я знаю, что это аудиофайл. Бинарный файл - аудиофайл WeChat (ios).
Предоставление загружаемого файла образца расширение AUD не имеет смысла.
Скорее всего, вы найдете файл AUD в папке программы для видеоигра Westwood. Файл с расширением AUD файла - это сжатая аудио-видеоигра Файл.
Как найти кодек?
Если вы знаете имя кодека или его идентификатор (известный как идентификатор FourCC для видеокодеков или идентификатор WaveFormat для аудиокодеков), попробуйте выполнить поиск в Интернете. Вы можете часто перейти на сайт производителя кодека, чтобы загрузить самую последнюю версию кодека.
Поскольку ваш файл не имеет заголовка и метаинформации (магия файла), вы можете полагаться только на расширение файла, например:
http://www-mmsp.ece.mcgill.ca/documents/AudioFormats/AU/AU.html
![enter image description here]()
Если я получаю файл с расширением .EXE и * каким-то образом я знаю, что это действительно аудиофайл, я могу проверить магию файла, используя Winista.
public MimeType GetMimeTypeFromFile(string filePath)
{
sbyte[] fileData = null;
using (FileStream srcFile = new FileStream(filePath, FileMode.Open, FileAccess.Read))
{
byte[] data = new byte[srcFile.Length];
srcFile.Read(data, 0, (Int32)srcFile.Length);
fileData = Winista.Mime.SupportUtil.ToSByteArray(data);
}
MimeType oMimeType = GetMimeType(fileData);
if (oMimeType != null) return oMimeType;
//We haven't found the file using Magic (eg a text/plain file)
//so instead use URLMon to try and get the files format
Winista.MimeDetect.URLMONMimeDetect.urlmonMimeDetect urlmonMimeDetect = new Winista.MimeDetect.URLMONMimeDetect.urlmonMimeDetect();
string urlmonMimeType = urlmonMimeDetect.GetMimeFromFile(filePath);
if (!string.IsNullOrEmpty(urlmonMimeType))
{
foreach (MimeType mimeType in types)
{
if (mimeType.Name == urlmonMimeType)
{
return mimeType;
}
}
}
return oMimeType;
}
Примечание код для обращения к URLMon для поиска MIME-типа можно найти здесь на msdn - определить тип файла
Вышеуказанный метод откроет файл и определит его реальный тип MIME, чтобы узнать, с какой программой его открыть. Он выполняет сопоставление с использованием файла сопоставления типа видео/аудио MIME в формате XML:
<!--
! Audio primary type
! -->
<mime-type name="audio/basic"
description="uLaw/AU Audio File">
<ext>au</ext><ext>snd</ext>
<magic offset="0" type="byte" value="2e736e64000000"/>
</mime-type>
<mime-type name="audio/midi"
description="Musical Instrument Digital Interface MIDI-sequention Sound">
<ext>mid</ext><ext>midi</ext><ext>kar</ext>
<magic offset="0" value="MThd"/>
</mime-type>
<mime-type name="audio/mpeg"
description="MPEG Audio Stream, Layer III">
<ext>mp3</ext><ext>mp2</ext><ext>mpga</ext>
<magic offset="0" value="ID3"/>
</mime-type>
Я попробовал winamp и Windows Media Classic, и оба не смогли открыть файл.
Так как вы не знаете тип файла MIME и расширение AUD файла явно не так, я не думаю, что его можно обнаружить кодек/программу, необходимую для воспроизведения этого файла.