有一个通过C#包使用LibVLC的NuGet应用程序。
以下是套餐:
使用这些包,很容易将一些媒体播放器放到您的WinForms应用程序中。
您所要做的就是初始化一个播放器并给它一个新的Media:
LibVLCSharp.Shared.LibVLC libVLC = new LibVLC();
LibVLCSharp.WinForms.VideoView videoView;
videoView.MediaPlayer = new LibVLCSharp.Shared.MediaPlayer(libVLC)
videoView.MediaPlayer.Play(new Media(libVLC, "URL", FromType.FromLocation));现在,我想将来自缓冲区的自定义数据提供给mediaplayer。它可以是字节数组,或者任何类似的东西。(数据应被视为来自一个有效的mp4文件块-逐块)。
如何使用libVLC在C#中实现这一点?
发布于 2020-04-09 15:30:46
如果不想在不需要的地方创建流,还可以实现自己的MediaInput类,并实现所需的方法
https://code.videolan.org/videolan/LibVLCSharp/-/blob/master/src/LibVLCSharp/MediaInput.cs
然后,其用法与@mfkl指出的相同。小心点,MediaInput必须被处理掉!
this._mediaInput = new MyMediaInput();
mediaPlayer.Play(new Media(libVLC, this._mediaInput));
// At the end
this._mediaInput.Dispose();发布于 2020-04-09 15:12:09
使用此媒体构造函数
new Media(libVLC, new StreamMediaInput(stream));stream可以通过任何.NET流。
此示例包含一个急流流,例如:https://github.com/mfkl/lvst/blob/master/LVST/Program.cs
https://stackoverflow.com/questions/61120531
复制相似问题