Мне как-то потребовалось извлечь аудио из *.FLV файлов. Графические видеоредакторы мне показались для этой цели слижком уж неподходящими, поэтому я решил написать свою собственную утилиту, делающую извлечение звука из любых медиафайлов, в командной строке.
Я пользовался только опенсорсными продуктами.
Итак, что нам потребуется:
Шаг 1. Устанавливаем K-Lite Codec Pack, Virtual Dub и AVISynth.
Шаг 2. Пишем вот такой скрипт на BAT-языке командного процессора cmd.exe:
Шаг 3. Сохраняем этот скрипт как «extractaudio.bat» в одном из каталогов, прописанных в переменной окружения %PATH%.
Всё!
При запуске этого скрипта в каталоге, в котором лежат аудио- или видеофайлы, скрипт извлечет из каждого такого файла аудио в формате WAV 44кГц моно, имя файла будет совпадать с именем исходного медиафайла, а расширение будет WAV.
Этот код, к примеру, может выковыривать звук из видеороликов в формате 3GP и из флеш-видео FLV.
Успехов.
Я пользовался только опенсорсными продуктами.
Итак, что нам потребуется:
- набор кодеков, такой как K-Lite Codec Pack
- видеоредактор Virtual Dub
- AVISynth
Шаг 1. Устанавливаем K-Lite Codec Pack, Virtual Dub и AVISynth.
Шаг 2. Пишем вот такой скрипт на BAT-языке командного процессора cmd.exe:
@echo off @rem (C) danx set VD=VirtualDub.audio. echo VirtualDub.Open(VirtualDub.params[0],"",0); > 1.jobs echo %VD%SetSource(1); >> 1.jobs echo %VD%SetMode(1); >> 1.jobs echo %VD%SetInterleave(1,500,1,0,0); >> 1.jobs echo %VD%SetClipMode(1,1); >> 1.jobs echo %VD%SetConversion(44100,0,1,0,1); >> 1.jobs echo %VD%SetVolume(); >> 1.jobs echo %VD%SetCompression(); >> 1.jobs echo %VD%EnableFilterGraph(0); >> 1.jobs echo %VD%filters.Clear(); >> 1.jobs echo VirtualDub.SaveWAV(VirtualDub.params[1]); >> 1.jobs echo VirtualDub.Close(); >> 1.jobs FOR %%i IN (*.*) do ( if not exist %%~ni.wav ( echo. echo Re-compressing %%i echo c = DirectShowSource^("%%i"^) > 3.avs echo AudioDub^(BlankClip^(length=c.FrameCount^), c^) >> 3.avs "C:\Program Files\VirtulDub\vdub.exe" /i 1.jobs 3.avs %%~ni.wav >nul ) ) del /q /s 3.avs >nul 2>&1 del /q /s 1.jobs >nul 2>&1
Шаг 3. Сохраняем этот скрипт как «extractaudio.bat» в одном из каталогов, прописанных в переменной окружения %PATH%.
Всё!
При запуске этого скрипта в каталоге, в котором лежат аудио- или видеофайлы, скрипт извлечет из каждого такого файла аудио в формате WAV 44кГц моно, имя файла будет совпадать с именем исходного медиафайла, а расширение будет WAV.
Этот код, к примеру, может выковыривать звук из видеороликов в формате 3GP и из флеш-видео FLV.
Успехов.