2010-04-22 4 views
1

Я хочу сделать программу, которая принимает видео и аудио и объединяет их. Тип видео или тип звука для меня не важны. Как я могу это сделать? Существует ли для этого библиотека? Я знаю, что есть много программ по этой теме, но я хочу узнать, как реализовать такую ​​программу.Как реализовать программу конвертации видео и аудио?

ответ

3

технический термин для того, что вы пытаетесь сделать, это «multiplexing», и обычно упоминается как «» мультиплексирования.

FFmpeg - это многоплатформенный инструмент командной строки, который делает это и аргументирует промышленный стандарт. Многие проекты завершают FFmpeg в библиотеки и графические интерфейсы.

FFmpeg также с открытым исходным кодом, поэтому вы можете скачать код и посмотреть, как они это сделали. Это сиад, он очень большой и сложный.

Если вы заинтересованы в фактических механиках мультиплексирования отдельных аудио и видео файлов вместе в файл назначение, то вам нужно будет многим узнать о container formats и Codecs.

0

Посмотрите на какую-то обертку FFMPEG в C#.

+0

с этой библиотекой. Можно ли объединить видео и аудио файлы? например: у меня есть 2 файла (мультяшный видео и речевой звук). Я хочу объединить их. – ibrahimyilmaz

+0

Да, вы можете. Это здорово! – jini

0

Простым способом мультиплексирования аудио и видео на linux является использование gstreamer. Вот конвейер A/V, который можно создать с помощью gst-запуска в командной строке.

filesrc location=file1.vid ! queue ! mux. filesrc location=file2.aud ! queue ! mux. avimux name=mux ! filesink location=output.avi 

Заменить file1.vid с именем закодированного видеофайла и file2.aud с именем закодированного аудиофайла. output.avi - это файл контейнера, который вам нужен.