Конвертируйте видео из формата Mp4,avi в формат wmv, используя C#
Я использовал Microsoft Expression Encoder для добавления двух видео, и это работает отлично. Проблема в том, что когда я пытался добавить видео, отличное от 'wmv', он выдает исключение FileNot Supported
Я искал в Google, но я не смог найти решение.
private void button1_Click(object sender, EventArgs e)
{
MediaItem mediaItem1 = null;
Job job = new Job();
job.EncodeProgress += new EventHandler<EncodeProgressEventArgs>(job_EncodeProgress);
int count = 0;
//video url contains all urls of videos
foreach (string x in VideosUrls)
{
if (count == 0)
{
mediaItem1 = new MediaItem(x);
job.MediaItems.Add(mediaItem1);
}
else
{
mediaItem1.Sources.Add(new Source(x));
}
count++;
}
job.OutputDirectory = @"C://videoOutput";
job.Encode();
}
Есть ли способ использовать AForge.NET или Microsoft Expression Encoder, чтобы я мог программно конвертировать любое видео "mp4" в "wmv", прежде чем добавлять его без потери звука или качества.
Большое спасибо за чтение всех Вопрос:)
1 ответ
Я бы проверил, какая у вас версия кодировщика Windows Media.
"Express Edition", по-видимому, "не поддерживает кодирование H.264".
На самом деле вам нужна лицензия на кодирование MP4 от MPEG LA. Вероятно, именно поэтому MPEG 4 поддерживают только платные версии Expression Encoder.
Логически, вы не можете конвертировать из одного видео / аудио формата в другой без потери качества. Файлы WMV обычно содержат видео, закодированное в VC-1, и аудио, закодированное в WMA. Но файл.mp4 обычно содержит видео h.264 и аудио AC-3.
Итак, ваш окончательный файл.wmv должен содержать только видео в VC-1, что будет означать декодирование видео h.264 и его кодирование в VC-1. Это означает потерю качества.
VideoLan может сообщить вам кодеки, используемые внутри ваших файлов.mp4 и.wmv. Смотрите этот ответ.