AviSynth decoder v0.6 [14.01.2018]

Список разделов foobar2000 Плагины

Описание: Все о плагинах, компонентах, расширениях

Сообщение #1 fb2k.ru » 14.06.2012, 17:23

Adds decoding support for AviSynth scripts (.AVS), audio only. Requires AviSynth 2.5 or newer.
Страница плагина: http://foobar2000.org/components/view/foo_input_avs
fb2k.ru
Автор темы, Робот
Репутация: 9
С нами: 11 лет 9 месяцев

Сообщение #2 fb2k.ru » 06.03.2017, 11:10

Вышла новая версия плагина: AviSynth decoder v0.5 [06.03.2017]
fb2k.ru
Автор темы, Робот
Репутация: 9
С нами: 11 лет 9 месяцев

Сообщение #3 fb2k.ru » 14.01.2018, 11:10

Вышла новая версия плагина: AviSynth decoder v0.6 [14.01.2018]
fb2k.ru
Автор темы, Робот
Репутация: 9
С нами: 11 лет 9 месяцев

Сообщение #4 Rodan » 25.12.2018, 15:07

Прикольно, с помощью него можно проигрывать звук с DVD-Video.

Наивная реализация
.avs
Код: Выделить всё
LWLibavAudioSource("VTS_01_1.VOB")      \
+ LWLibavAudioSource("VTS_01_2.VOB")    \
+ LWLibavAudioSource("VTS_01_3.VOB")    \
+ LWLibavAudioSource("VTS_01_4.VOB")    \
+ LWLibavAudioSource("VTS_01_5.VOB")    \
+ LWLibavAudioSource("VTS_01_6.VOB")

.cue
Код: Выделить всё
...
FILE "dvd-video.avs" WAVE
...
Очень долго добавляется в плейлист, переходы между треками по 10 секунд.

Оптимальная реализация
.avs
Куча avs-файлов
01.avs
Код: Выделить всё
LWLibavAudioSource("VTS_01_1.VOB")
AudioTrim(0.00, 322.03)
02.avs
Код: Выделить всё
LWLibavAudioSource("VTS_01_1.VOB")
AudioTrim(322.03, 589.83)
03.avs
Код: Выделить всё
LWLibavAudioSource("VTS_01_1.VOB")
AudioTrim(589.83, 897.80)
04.avs
Код: Выделить всё
LWLibavAudioSource("VTS_01_1.VOB")
last = last + LWLibavAudioSource("VTS_01_2.VOB")
AudioTrim(897.80, 1191.06)
05.avs
Код: Выделить всё
LWLibavAudioSource("VTS_01_2.VOB")
AudioTrim(163.90, 503.40)
И так до последнего трека последнего VOB'а...

!.tags (m-TAGS)
Код: Выделить всё
...
"@" : "01.avs",
...
Вручную не получится создать десятки avs-файлов с временными метками в виде магических чисел.
avs-файлы надо генерировать скриптом, опираясь на тайминги глав (ChapterXtractor) и длительности VOB-файлов (ffprobe).
Переходы между треками по 1-2 секунды, более-менее нормально.

Еще тут вовсю проявляются ависинтовские проблемы с frame accurate seeking.
  1. DirectShowSource - быстрее всех и не требует индексных файлов, но при поиске начала трека ошибается на десятки секунд.
  2. MPEG2Source - требует индексные файлы .d2v, которые вроде не создать средствами ависинта. Запускать отдельно DGMPGDec слишком неудобно.
  3. FFAudioSource - сам создаёт сжатые индексные файлы .ffindex; достаточно точный, но при проигрывании были какие-то артефакты вроде треска.
  4. FFMS2000 - не пробовал. Документации нет, отдельного фильтра для звука нет (?).
  5. LSMASHAudioSource - не пробовал. Примерно то же, что и LWLibavAudioSource.
  6. LWLibavAudioSource - сам создаёт индексные файлы .lwi (по 10-20 МБ... хотя они жмутся в 4 раза NTFS-сжатием), остановился на нём.

В общем, сойдёт чтобы поиграться / повосхищаться мощью фубара / сэкономить место на диске.

Примерно то же можно сделать с foo_input_ffmpeg, но тогда не ясно, как быть с треками на границе VOB'ов (и с ним получилось бы еще медленнее).
Rodan
Репутация: 0
С нами: 6 лет

Сообщение #5 MC Web » 25.12.2018, 18:33

Rodan:с помощью него можно проигрывать звук с DVD-Video
Rodan:то же можно сделать с foo_input_ffmpeg
а если добавить foo_youtube, то можно не только проигрывать звук с DVD-Video, но и смотреть видео.

Спойлер
Изображение
MC Web
Репутация: 248
С нами: 10 лет 7 месяцев

Сообщение #6 Azaza » 25.12.2018, 22:27

Rodan, для проигрывания звука из VOB'ов можно ещё foo_input_ffmpeg использовать
Azaza M
Аватара
Репутация: 393
С нами: 7 лет 6 месяцев

Сообщение #7 Rodan » 26.12.2018, 05:23

Идея была в том, чтобы представить DVD в виде полноценного альбома со всеми тегами и точным разбиением на треки. Выглядит не особо полезно, но не знаю, что еще можно интересного с foo_input_avs придумать.

foo_youtube - хороший плагин, да.

С foo_input_ffmpeg можно проигрывать VOB'ы, но "не ясно, как быть с треками на границе VOB'ов".
Придётся городить некрасивый cue-sheet (см. на TRACK 05):
Код: Выделить всё
FILE "VTS_01_1.VOB" WAVE
  TRACK 01 AUDIO
    TITLE "Track 1"
    INDEX 01 00:00:00
  TRACK 02 AUDIO
    TITLE "Track 2"
    INDEX 01 05:22:02
  TRACK 03 AUDIO
    TITLE "Track 3"
    INDEX 01 09:49:62
  TRACK 04 AUDIO
    TITLE "Track 4"
    INDEX 01 14:57:60
FILE "VTS_01_2.VOB" WAVE
  TRACK 05 AUDIO
    TITLE "Track 4 (continue)"  <------ жуткий костыль
    INDEX 01 00:00:00
  TRACK 06 AUDIO
    TITLE "Track 5"
    INDEX 01 02:43:67
...
В итоге на 6 VOB'ов будет по 5 "разрезанных" треков.

В варианте foo_input_ffmpeg + cue-sheet треки переключаются чуть быстрее (по сравнению с foo_input_avs + m-tags), но появляются задержки при перемотке.

---
Похоже, что только с помощью foo_input_avs можно представить несколько файлов в виде одного трека.

Можно еще использовать фильтры avisynth'а для простой обработки на лету, но их маловато (SoxFilter, SuperEQ, AssumeSampleRate). Про SoxFilter пишут: "Linear access is heavily recommended".

Добавлено спустя 3 часа 13 минут:
Еще хотелось бы иметь доступ ко всем звуковым дорожкам, но в одних source-плагинах можно выбрать только первую, а в других эта функция успешно сломана.
Rodan
Репутация: 0
С нами: 6 лет

Сообщение #8 seriousstas » 27.12.2018, 00:56

Rodan Спроси у Максима
У него есть все инструменты для создания отдельного плагина для просслушки скажем образов DAD дисков ..
seriousstas
Откуда: Украина , Ивано-Франковск
Репутация: 110
С нами: 9 лет 1 месяц


Вернуться в Плагины