나는 오그 오디오 파일과 바이트 순서로 저장된 일부 정보를 가지고있다. RIFF 또는 다른 것과 같은 단일 컨테이너에이 오디오 및 정보를 포장해야합니다. .NET에서 작성할 수있는 솔루션을 찾고 있습니다.OGG 오디오 파일을 RIFF 컨테이너에 저장하는 방법은 무엇입니까?
2
A
답변
1
Ogg는 컨테이너 형식입니다. Ogg 형식 도구를 사용하여 데이터를 기존 파일에 직접 첨부하거나 데이터를 첨부 할 도구가있는 다른 컨테이너 형식으로 데이터를 다시 스트리밍하는 것이 좋습니다.
형식은 WAV/RIFF, Matroska, MP4 일 수 있습니다. 또한 아마도이 추가 데이터가 썸네일 또는 추가 스트림 (타임 스탬프가있는 사용자 주석 등)과 정확히 일치 할 수 있습니다.
.NET에서 그러한 조작을하는 데 널리 사용되는 프레임 워크는 DirectShow.NET 라이브러리이지만 사용자가 필요에 따라 다른 도구를 사용하게 될 수도 있습니다. Ogg to Riff/Wave encoding with acm
0
How to move Ogg file to Wav file with Ogg Vorbis data in C#
static void OggToWavWithOgg()
{
string fileName = @"e:\Down\fortuna.ogg";
using (DsReader dr = new DsReader(fileName))
{
if (dr.HasAudio)
{
short oggFormatTag = 26479;
IntPtr format = dr.ReadFormat();
WaveFormat waveFormat = AudioCompressionManager.GetWaveFormat(format);
IntPtr formatOgg = AudioCompressionManager.GetCompatibleFormat(format, oggFormatTag);
using (WaveWriter ww = new WaveWriter(File.Create(fileName + ".wav"),
AudioCompressionManager.FormatBytes(formatOgg)))
{
AudioCompressionManager.Convert(dr, ww, true);
}
}
}
}
:
또한 코드와 이웃 스레드를 참조하십시오