Как программно извлечь аудио mp3 из видео YouTube?

Делает у любого есть любой демонстрационный asp.net код C#, чтобы извлечь аудио из видеосвязи YouTube и сохранить его как mp3 файл. Кто-то рекомендовал использовать wget и ffmpeg, который я установил и пытаюсь окружить команду, но получить исключение ниже. Пример кода упоминается ниже.

System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.EnableRaisingEvents = false;
proc.StartInfo.FileName = "C:\\Program Files\\GnuWin32\\bin\\wget.exe http://www.youtube.com/get_video?video_id=... | ffmpeg -i - audio.mp3";
proc.Start();
5
задан Cœur 22 January 2019 в 10:19
поделиться

3 ответа

Вы видите «файл не найден», потому что вы не указываете допустимое имя файла, например:

"C:\\Program Files\\GnuWin32\\bin\\wget.exe http://www.youtube.com/get_video?video_id=... | ffmpeg -i - audio.mp3"

Вышеупомянутое не является именем файла, это имя файла плюс некоторые аргументы, которые затем передается по конвейеру другому исполняемому файлу.

Поскольку вы пытаетесь запустить здесь два исполняемых файла (wget и ffmpeg), подход здесь будет заключаться в написании сценария (например, пакетного файла), который завершает эти два исполняемых вызова, а затем выполняет сценарий и передает аргумент url в Это.

3
ответ дан 14 December 2019 в 13:26
поделиться

Вы должны использовать класс WebClient для загрузки файла и использовать ffmpeg-sharp для его перекодирования.

3
ответ дан 14 December 2019 в 13:26
поделиться

Метод Process.Start (string) предназначен для запуска процесса без аргументов. Таким образом, как сказал chibacity, вы получите исключение, потому что вся строка «C: \ Program Files \ GnuWin32 \ bin \ wget.exe http://www.youtube.com/get_video?video_id= ... | ffmpeg -i - audio.mp3 "рассматривается как имя исполняемого файла. Чтобы запустить процесс с аргументами, используйте метод Process.Start (string, string): http://msdn.microsoft.com/en-us/library/aa326952%28v=VS.71%29.aspx .

0
ответ дан 14 December 2019 в 13:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: