1

我正在使用 PushStreamContent 以异步方式流式传输作为 BLOB 托管的视频。这是我到目前为止所做的

    public HttpResponseMessage Get(string filename, string extension)
    {
        var video = new VideoStream(filename, extension);
        var response = Request.CreateResponse();
        response.Content =
            new PushStreamContent(
                (Action<Stream, HttpContent, TransportContext>) video.WriteToStream,
                new MediaTypeHeaderValue("video/" + extension));
        return response;
    }

video.WriteToStream 只是读取文件并写入输出流。当我在这里关注这篇文章时,一切都很好。

这就是我使用 video.js 流式传输视频的方式

<video id="really-cool-video" class="video-js vjs-default-skin" controls poster="@Model.MediaThumbnailUrl"
                       preload="auto" style="width: 100%; min-height: 380px; height: 100%;" autoplay
                       data-setup='{}'>
                    <source src="/api/Stream/myfilenamehere/mp4" type="video/mp4">
                    <p class="vjs-no-js">
                        To view this video please enable JavaScript, and consider upgrading to a web browser
                        that supports HTML5 video.
                    </p>
                </video>

当我尝试向前拖动视频时遇到问题,它会重新启动视频。早些时候我有一个类似的问题,这是由于我在上传时错过了为块 blob 设置内容类型。我在这里又错过了什么吗?

4

0 回答 0