2010-06-22 82 views
1

有谁知道将mp4文件转换为ogg文件的简单方法吗?用C转换MP4到Ogg#

必须这样做,但没有太多的知识,而我所能找到的只是程序,而不是示例或库。

在此先感谢

回答

1
static void Mp4ToOgg(string fileName) 
{ 
    DsReader dr = new DsReader(fileName); 
    if (dr.HasAudio) 
    { 
     string waveFile = fileName + ".wav"; 
     WaveWriter ww = new WaveWriter(File.Create(waveFile), 
      AudioCompressionManager.FormatBytes(dr.ReadFormat())); 
     ww.WriteData(dr.ReadData()); 
     ww.Close(); 
     dr.Close(); 
     try 
     { 
      Sox.Convert(@"sox.exe", waveFile, waveFile + ".ogg", SoxAudioFileType.Ogg); 
     } 
     catch (SoxException ex) 
     { 
      throw; 
     } 

    } 
} 

How to converts a mp4 file to an ogg file

4

扩展乍得的回答我用NReco.VideoConverter which is a helpful wrapper for FFMPEG。我将MP4转换为OGG的代码如下。

1.将文件保存到本地存储器中的临时文件。

var path = Path.GetTempPath() + name; 
using (var file = File.Create(path)) 
{ 
stream.Seek(0, SeekOrigin.Begin); 
await stream.CopyToAsync(file); 
file.Close(); 
return path; 
} 

2.现在使用视频转换器来转换文件,很简单!

var output = new MemoryStream(); 
var ffMpeg = new FFMpegConverter(); 
ffMpeg.ConvertMedia(filePath, output, Format.ogg); 
output.Seek(0, SeekOrigin.Begin); 
return output;