2

..如上。我正在寻找一种方法来读取 c#(或 c++,我可以转换为 dll 并对其进行编组)中的音频流,并将线性时间码数据作为 Hour:Minute:Second:Frame 获取。

我找到了使用 libltc ( https://github.com/x42/libltc ) 的 ac# 端口 lib 和 dll 构建良好,但 c# 代码在 Wasapi 记录功能上崩溃。

var waveIn = new WasapiCapture();
            waveIn.WaveFormat = new WaveFormat(44100, 8, 2);

            Console.WriteLine("Device format: " + waveIn.WaveFormat.ToString());
            FDecoder = new LTCSharp.Decoder(waveIn.WaveFormat.SampleRate, 25, 32);
            waveIn.DataAvailable += waveIn_DataAvailable;

            waveIn.StartRecording();  //crashes here 

错误是:

Unhandled Exception: System.ArgumentException: Unsupported Wave Format
   at NAudio.CoreAudioApi.WasapiCapture.InitializeCaptureDevice()
   at NAudio.CoreAudioApi.WasapiCapture.StartRecording()

好吧,这是一种不受支持的格式。(LTC 流时间码信号)

我怎样才能解决这个问题?有人用 C# 写过时间码阅读器吗?

谢谢。

4

0 回答 0