English 中文(简体)
MP3 沥青阵列——转换为WAV和航向指数?
原标题:MP3 byte array - convert to WAV and navigate to time index?
  • 时间:2010-08-08 02:35:55
  •  标签:
  • c#
  • audio
  • mp3

我有一阵列,包含一个MP3流。

如果我想要能够转换成一个WAV,那么是否应当假设这一流必须进一步编码?

在其目前的 by状态中,是否能够发挥基本功能,如获得/设立职位(假日)?

最佳回答

Yeah, MP3文档与WAV文档有很大不同。 西维协会的档案中含有从开始至尾以样品形式显示的原始视听数据,同样,比图文件也含有从左到右上、上到底的粉子的原始数据。 你们可以认为,作为声音波段的比图画——但不是像彩色,而是在两个频道上播音灯,通常每秒4 100次,如果它带有定型,每频道2次。

(鉴于你能够实际计算西维协会档案的卷宗量——储存1分钟的录音,你需要60秒钟,* 44100个样本 * 2个频道* 2个按字节=10.09MB)。)

MP3文件载有经数学修改的这种形象,并丢弃人可以听到的录音。 它同样致力于打压图像。

象录像卡最终需要比照图才能工作一样,声音卡最终需要WAV数据,以便与你合作。

在Mp3案卷一开始,数据集称为ID3 标签,其中载有关于档案的基本资料——艺术家姓名、跟踪长度、名称等。 您可使用改为/write ID3 tags in C#。

至于声音本身,我并不肯定在C#中完全写有Mp3 decoers。 从技术上讲,没有理由不做(它也应该是良好的业绩明智的),但标准相当松散,数学紧张,因此人们往往只使用FFMpeg等物品去编码。 http://www.google.com/search?hl=en&source=hp&q=c%23+ffmpeg&btnG=谷歌+Search&aq=f&aqi=&aql=&oq=&gs_rfai= rel=“noreferer” 页: 1

如果你不需要做任何特殊处理,而你只是想做录音,那么你可以使用WPF/Silverlight

您可能从Josh Smith s Podder, 附录。

问题回答

NAudio/a>是一个开放源。 能够读到MP3文档的网络图书馆。

将MP3改为WAV,使用类似于以下的代码:

Stream inputStream = ...;
Stream outputStream = ...;

using (WaveStream waveStream = WaveFormatConversionStream.CreatePcmStream(new Mp3FileReader(inputStream)))
using (WaveFileWriter waveFileWriter = new WaveFileWriter(outputStream, waveStream.WaveFormat))
{
    byte[] bytes = new byte[waveStream.Length];
    waveStream.Read(bytes, 0, waveStream.Length);
    waveFileWriter.WriteData(bytes, 0, bytes.Length);
    waveFileWriter.Flush();
}

根据“Rei Miyasaka”的答复,在C#. 公开来源中也写了MP3 decoder。 查阅Mp3Sharp

http://sourceforge.net/projects/mpg123net/“rel=“nofollow noreferer” http://sourceforge.net/projects/mpg123net/。 a) 在座标上打字,并进一步将代号为PCM用于贵方。





相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

NSArray s, Primitive types and Boxing Oh My!

I m pretty new to the Objective-C world and I have a long history with .net/C# so naturally I m inclined to use my C# wits. Now here s the question: I feel really inclined to create some type of ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

How to Use Ghostscript DLL to convert PDF to PDF/A

How to user GhostScript DLL to convert PDF to PDF/A. I know I kind of have to call the exported function of gsdll32.dll whose name is gsapi_init_with_args, but how do i pass the right arguments? BTW, ...

Linqy no matchy

Maybe it s something I m doing wrong. I m just learning Linq because I m bored. And so far so good. I made a little program and it basically just outputs all matches (foreach) into a label control. ...

热门标签