Передача avs в ffmpeg с использованием avs2yuv

Я пытаюсь использовать avs2yuv, чтобы передать вывод avs в ffmpeg для дальнейшего преобразования.

  • Мой видео файл называется "sample.avi" (нет звука, только видео)

  • Мой аудио файл называется "sample.wav"

  • Мои файлы avs называются sample.avs и выглядят так:

V = AviSource("sample.avi")
A = WavSource("sample.wav")
AudioDub(V ,A)

или же

V = DirectShowSource("sample.avi")
A = DirectShowSource("sample.wav")
AudioDub(V ,A)
  • Вот как я труба:
avs2yuv sample.avs - | ffmpeg -y -f yuv4mpegpipe -i - output.mp4

Теперь вот ПРОБЛЕМА: независимо от того, какие файлы я пытаюсь использовать в качестве входных данных, в моих выходных данных нет звука. Я не понимаю, что я делаю неправильно, и почему мой звук не попадает на выход. Если у кого-то есть опыт работы с avisynth и avs2yuv, ваша помощь будет принята с благодарностью.

Спасибо!

3 ответа

Я бы попробовал воспроизвести ваш avs-файл с помощью ffplay, чтобы проверить ваш avs-файл.

И вы также можете попробовать построить GRaph с GraphEdit, чтобы сделать что-то подобное

A = DirectShowSource("sample_audio.grf", video=false)
V = DirectShowSource("sample_video.grf", audio=false)
AudioDub(V ,A)

С DirectShow вы можете добавить несколько параметров, таких как fps, frame-count и т. Д., Иногда это помогает.

Удачи

Попробуйте makeAVIS.exe из пакета ffdshow:

wine makeavis.exe -p -i example.avs -a output.wav

По этой ссылке:

Avs2YUV - это программа командной строки, предназначенная для использования под Wine для взаимодействия между Avisynth и видеоинструментами на основе Linux.

avs2yuv.exe обрабатывает только видео поток, который выводится в YUV цветовое пространство. Это так просто: аудиопоток игнорируется.

Вот несколько способов обработки аудио и видео стримов в .avs, Эти методы работают в Linux с использованием Wine и, конечно, работают в Windows:

  • Кодировать в Avidemux с помощью AvsProxy (AvsProxy поставляется с Avidemux)

  • использование VirutalDub как кодировщик графического интерфейса

  • в противном случае аудио кодируют отдельно, а затем воспроизводят видео в отдельном шаге.

я верю avs2pipe может обрабатывать как видео, так и аудио потоки от .avs, но я еще не пробовал. Вот ссылка на некоторую информацию о avs2pipe

Резюме: Использование avs2yuv в основном имеет смысл в среде Linux/Unix.

Другие вопросы по тегам