2009-12-11 4 views
2

Я пытаюсь извлечь mp3 из файла совместимого с mp4 файла и до сих пор нашел FFMpeg и множество разных оберток, которые все утверждают, что могут выполнять работу ,Использование FFmpeg или обертки для получения mp3 с mp4 в C#

В идеале я хотел бы, чтобы не полагаться на обстрел в ех FFMpeg, но ни один из оберток я пробовал не похож на работу ....

Кто-нибудь есть какой-либо код или совет для как это сделать?

Спасибо!

+0

В какой упаковке вы пытались? Я нашел несколько таких, как FFlib.Net и FFmpeg.Net. Он работает, если вы используете FFmpeg.exe напрямую? – Costo

ответ

0

Альтернативой может быть использование VLC. Там есть библиотека dll и несколько полуподдерживаемых оболочек C#. Вы должны иметь возможность выполнять транскодирование, воспроизведение и даже потоковую передачу.

Не уверен, что это меньше работает, чем обстреливать ffmpeg.

1

На мой взгляд, используя класс Process является путь:

Создать процесс:

private Process GetProc(string workingDirectory) 

    { 

     return new Process 

        { 

         StartInfo = new ProcessStartInfo 

             { 

              WorkingDirectory = workingDirectory, 

              UseShellExecute = false, 

              RedirectStandardOutput = true, 

              FileName = "YOUR_EXECUTABLE" 

             } 

        }; 

    } 

вызов с parmeters, а затем получить результат. После этого вам нужно проверить, было ли это удачным или нет. Будь проще.

public string Execute(string arguments) 

    { 

     var action = GetProc(); 

     action.StartInfo.Arguments = arguments; 

     action.Start(); 

     action.WaitForExit(); 

     return action.StandardOutput.ReadToEnd(); 

    } 
+0

Это более или менее стратегия, которую я использую в одном из моих приложений для извлечения MPEG из файла DVR-MS. Это не так, как с обратной связью, так как это делает код, но он работает хорошо. +1 –