bonbonbaron12 Ответов: 0

Почему wget работает с некоторыми файлами в sox, но не с другими?


Привет,

Я испытываю ошибку во взаимодействии между библиотекой обработки звука под названием SoX (v14.4.2) и wget в Windows 7:

Ошибка утверждения: stream->md_len + md_len - si.main_data_begin <= MAD_BUFFER_MDLEN, файл layer3.c, строка 2633

layer3.c - это из библиотеки libmad (источник здесь).

Есть некоторые файлы, для которых это работает, а другие-нет. Смотрите тестовые примеры ниже. Это не имеет никакого отношения к размерам файлов, и я могу загрузить оба файла просто отлично, когда я вручную wget любой из них за пределами SoX.

Хороший тестовый случай: http://garchives1.broadcastify.com/2783/20190427/201904271420-550627-2783.mp3 (3,49 МБ)

Неудачный тестовый случай: http://garchives1.broadcastify.com/24808/20190427/201904271447-606881-24808.mp3 (3,47 МБ)

Для обоих URL-адресов я запускаю эту простую команду:

Сокс [URL_HERE] выход.МР3

Я все еще получаю see output.mp3 от плохого wget, но это всего лишь 1,30 КБ и в основном ничего не имеет.

Кто-нибудь еще видел это раньше? Я что-то упустил?

Спасибо за вашу помощь и время!
Майкл

Что я уже пробовал:

Я попробовал опцию буфера (--buffer [NUMBER_HERE]), думая, что она все равно захватит весь файл, но только по более мелким частям за раз. Вместо этого он просто захватывает небольшую часть и останавливается. Я не могу сделать больше 3000 или около того без того, чтобы он не разбился и не дал ту же ошибку, что и выше.

Еще одна вещь, которую я попробовал, - это несколько выходных форматов.

wget прекрасно работает с обоими файлами сам по себе. Это только когда используется с SoX.

0 Ответов