0

我正在创建一个将记录 Microsoft 团队实时会话的机器人。录音工作正常,但在生成视频文件时遇到问题。我遵循的过程是将视频数据转换为字节数组,然后将数据写入视频格式文件。

我正在添加一些代码片段,到目前为止我已经检查过了。

1. Stream videoStream = new FileStream(videoFilePath, FileMode.Create);
   BinaryWriter videoStreamWriter = new BinaryWriter(videoStream);
   videoStreamWriter.Write(videoBytesArray, 0, videoBytesArray.Length);
   videoStreamWriter.Close();
2. System.IO.File.WriteAllBytes(videoFilePath, videoBytesArray);

从上述代码片段生成的文件的格式不受支持。这可能是因为从会话接收数据。

我正在通过本地媒体会话的 VideoMediaReceived 事件 (ICall.ILocalMediaSession.VideoSockets) 上的视频套接字接收数据。套接字正在接收的数据的视频颜色格式是 H264 格式。

我在创建音频文件时遇到了类似的问题。为此,我使用 WaveFormat 包来创建音频文件。

那么,是否有任何库/方法可以将字节数组转换为任何格式的视频文件?

4

1 回答 1

0

@Murtaza,你可以试试这个,看看它是否有帮助。如果字节数组已经是视频流,那么您只需将其序列化到扩展名为 mp4 的磁盘。(如果是 MP4 编码流)。

Stream t = new FileStream("video.mp4", FileMode.Create);
BinaryWriter b = new BinaryWriter(t);
b.Write(videoData);
t.Close();
于 2020-12-07T08:25:26.137 回答