我想流式传输我通过SRT 协议( https://www.srtalliance.org/ ) 收到的视频。
不幸的是,flutter video_player 不支持 SRT 协议。由于该协议是用 C/C++ 编写的,我用 dart:ffi 实现了一个包装器,现在我可以连接到我的服务器,该服务器正在使用 SRT 流式传输视频(苹果 h264)。我可以从流中接收数据包,但现在我不知道如何从这些数据包中播放视频。到目前为止我的方法:创建一个临时文件
var dir = Directory.systemTemp.createTempSync();
var temp = File("${dir.path}/$fileName").createSync();
然后将传入的数据包写入临时文件并将其作为文件传递给 video_player。
temp.writeAsBytesSync(receivedPackets*emphasized text*, mode: FileMode.append, flush: false);
video_player 未打开文件 (h264),我收到以下错误消息。
[VERBOSE-2:ui_dart_state.cc(177)] Unhandled Exception: PlatformException(VideoError, Failed to load video: Cannot Open, null, null)
为了解决这个问题,我将不胜感激!