AIMP Forum

AIMP for Windows => Вопросы / Questions => Topic started by: ss.pl on May 01, 2019, 21:48:08

Title: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: ss.pl on May 01, 2019, 21:48:08
Приветствую.
Пытаюсь прикрутить к аудио-конвертору аимпа пару кодеров в mp3, «BladeEnc» и «mp3sEncoder».
Но ни как не могу запустить кодирование в конверторе, хотя запуск из консоли работает.
Проблема в создании пресета, - не понимаю как перевести консольную команду в синтаксис xml-файла.
из консоли:
bladeenc.exe -q -br 160 test.wav test.mp3   // работает
bladeenc.exe -q test.wav test.mp3 -br 160   // работает
а из пресета не хочет
Code: [Select]
<encoder Name="BladeEnc" App="bladeenc.exe">
<description>
<inputformats type="autogen">
<autogen SampleRates="44100" SampleFormats="16" Channels="2" />
</inputformats>
<property name="Ext" value=".mp3" />
</description>
<presets>
<preset Name="128 kbps"  cmdparams="-q -if - -of -br 128 - %output%" />
<preset Name="160 kbps"  cmdparams="-q -br 160 -if - -of %output%" />
<preset Name="192 kbps"  cmdparams="-i -o - %output% -q -br 192" />
<preset Name="256 kbps"  cmdparams="-q -br 256 - %output%" />
</presets>
</encoder>
из консоли:
mp3sEncoder.exe -if test.wav -of test.mp3 -br 320000 -q 1   // работает
а из пресета не хочет, крутил всяко-разно
Code: [Select]
<encoder Name="FhG" App="mp3sEncoder.exe">
<description>
<inputformats type="autogen">
<autogen SampleRates="44100" SampleFormats="16" Channels="2" />
</inputformats>
<property name="Ext" value=".mp3" />
</description>
<presets>
<preset Name="xxx" cmdparams="-if - -of -br 320000 -q 1" />
<preset Name="00" cmdparams="-if - -of %output% -br 320000 -q 1" />
<preset Name="01" cmdparams="-if - -of - %output% -br 320000 -q 1" />
<preset Name="02" cmdparams="-if -of %output% -br 320000 -q 1" />
<preset Name="03" cmdparams="-i - -o %output% -br 320000 -q 1" />
<preset Name="04" cmdparams="-i - -o - %output% -br 320000 -q 1" />
<preset Name="05" cmdparams="-if - -of -br 320000 -q 1 - %output%" />
<preset Name="06" cmdparams="-i - -o -br 320000 -q 1 - %output%" />
<preset Name="07" cmdparams="-br 320000 -q 1 - -o %output%" />
<preset Name="08" cmdparams="-br 320000 -q 1 - %output%" />
<preset Name="09" cmdparams="-br 320000 -q 1 -if - -of %output%" />
<preset Name="10" cmdparams="- %output% -br 320000 -q 1" />
</presets>
</encoder>
Не понятно как работают потоки STDIN и STDOUT, о них говорится в мануалах кодеров.
Вот что интересно, консольный «Lame» "прикрутился" и работает без проблем.
Code: [Select]
<encoder Name="LAME mp3" App="lame.exe">
<description>
<inputformats type="autogen">
<autogen SampleRates="44100" SampleFormats="16" Channels="2" />
</inputformats>
<property name="Ext" value=".mp3" />
</description>
<presets>
<preset Name="CBR [320]"  cmdparams="-b 320 -q 0 - %output%" />
<preset Name="VBR [260]"  cmdparams="-V 0 -q 5 - %output%" />
</presets>
</encoder>

Code: [Select]
<encoder Name="LAME wav" App="lame.exe">
<description>
<inputformats type="autogen">
<autogen SampleRates="44100" SampleFormats="16" Channels="2" />
</inputformats>
<property name="Ext" value=".wav" />
</description>
<presets>
<preset Name="Decode"  cmdparams="--decode - %output%" />
</presets>
</encoder>
Прошу помощи, в создании правильных параметров запуска, кодеры и их описание прикрепил.
Title: Re: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: Artem on May 05, 2019, 09:16:09
BladeEnc через stdin я завести не смог - он повисает при записи в него данных.

С mp3sEncoder есть проблема - он требует передачи длительности исходного файла, и не принимает 0 или -1 в качестве аргумента, говорящего, что длительность неизвестна.

А зачем вам эти кодировщики?
Title: Re: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: ss.pl on May 05, 2019, 09:53:09
Спортивный интерес.
Они у меня через батники работали. Думал прикручу к аимпу, как Lame.
Видать не судьба, впрочем да и кодеры уже как динозавры.
Спасибо.
Title: Re: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: soldatovaua on May 12, 2023, 21:13:06
Подскажите, пожалуйста, где брать значения "Channels"?
Например, для FDK заявлены Channels: 1, 2, 3, 4, 5, 5.1 и 7.1.
Какие значения добавлять в Encoders.xml?
Title: Re: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: Алексей Долматов on May 12, 2023, 21:22:41
Искать в документации в приложению-энкодеру. Она бывает в виде консольной справки, отдельным файлом/файлами или на сайте энкодера. В ином случае самостоятельно проверять сколько каналов сможет кодировать энкодер.
Title: Re: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: soldatovaua on May 12, 2023, 21:51:59
Нашел такие параметры: https://imageban.ru/show/2023/05/12/c8aa252b84d7741c8cb9b1122ea4c2ec/png (https://imageban.ru/show/2023/05/12/c8aa252b84d7741c8cb9b1122ea4c2ec/png)
По первому столбцу значения 1-7.
Меня смущает, что в файле Encoders.xml только четные значения.
Title: Re: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: Алексей Долматов on May 12, 2023, 21:59:29
https://mediadoma.com/opisanie-kanalov-obemnogo-zvuka-2-1-5-1-7-1-9-1-i-drugie
Видать разработчику удобней брать фактическое число, а не преобразовывать название конфигурации. Например, 7.1 - это 7 динамиков + 1 динамик-саб = 8 динамиков. 2.1 - фактически нет отдельной линии на саб, так как там берётся 2.0 (левый, правый) и на уровне колонок выводится на саб. Получается 3 не может существовать в конфигурации.
Title: Re: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: Алексей Долматов on May 12, 2023, 22:05:00
Это если не вникать в тонкости звуковых дорожек внутри файла. Ведь 7 дорожек могут быть с LFE (саб) или без него, т.е. для 7.0 или 7.1.
Title: Re: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: soldatovaua on May 12, 2023, 22:42:46
Сложно. Ладно, 1 и 2 - это и есть 1 и 2.
5.1 и 7.1 - это 6 и 8.
А что тогда с 3, 4 и 5?
Title: Re: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: Алексей Долматов on May 12, 2023, 23:31:33
Звуковая карта ПК поддерживает не все виды возможных конфигураций, поэтому и количество каналов соответствует типовым вариантам. Откройте настройки микширования в плеере и посмотрите.

2.1 уже описал. Это один штекер с левым-правым каналом, а саб создаётся за пределами пк, в файле нет третьей дорожки.
3.0 аналогичен по количеству 2.0, только вместо саба выход на центр.
5.0 и 7.0 сомнительно встретить без дорожки (.1), поэтому в большую сторону.
https://svoykinozal.ru/obustroystvo-kinozala/formati-mnogokanalnogo-zvuka/
Здесь может быть проще понять разделение по дорожкам, чем по изображениям динамиков. У меня нет "в запасе" ссылки, поэтому даю первые из Гугла после быстрого просмотра страницы. Также учтите, что в типовом варианте ПК поддерживает только часть конфигураций, поэтому не все варианты доступны. Например, вы не подключите 11.1 через 6 базовых портов джека 3.5, с учётом микрофонного порта. Это уже не типовой вариант и используется другая звуковая система.

P.S. Возможно, кто-то может объяснить проще. Я описываю в своём понимании.
Title: Re: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: Artem on May 12, 2023, 23:35:19
Сложно. Ладно, 1 и 2 - это и есть 1 и 2.
5.1 и 7.1 - это 6 и 8.
А что тогда с 3, 4 и 5?

4 - это quadro -  передние L / R и такие же тыловые
3 и 5 - таких вовсе нет (на уровне движка), а так это 2.1 и 4.1 - добавляется канал саббуфера
Title: Re: Encoders.xml - консольные кодировщики, добавление параметров.
Post by: «G-Li†ch» on May 15, 2023, 11:39:46
впрочем да и кодеры уже как динозавры.
О. года 4 назад мне захотелось прикрутить SONARC (1992-93 гг)… Но вот "поточного декодера" для него ещё не попадалось (.wv понимался AIMP`ом как WavPack), да и файлов .VOC (или сжатых.vc) и .SOU (или сжатых.snc) тоже, т.е. это как с OptimFrog`ом приходилось сначала распаковать, затем закидывать распакованное в список воспроизведения… Собсно, идея добавить его в Encoders.xml "загнулась"…