gpt4 book ai didi

c# - 使用 HTML5 视频标签通过 ashx 处理程序从 sql server blob 播放视频文件

转载 作者:太空狗 更新时间:2023-10-29 15:51:10 24 4
gpt4 key购买 nike

我正在使用此 codeproject article 中的代码将 MP4 视频文件上传到 SQL 服务器 (varbinary(MAX)) 并从那里播放。

我的要求是专门使用 SQL 服务器,而不是从文件系统存储和获取视频。

这是我用来播放视频的代码:

<video id='my_video_1'  controls
width="640" height="264"
data-setup="{"controls":true, "preload":none}" >
<source src='<%# "VideoHandler.ashx?id=" + Eval("ID") %>' type='video/mp4'>
</video>

如果我使用物理视频文件作为视频源,它就可以工作。但是上面的代码不起作用。

在“Internet Explorer”中,标签呈现一个带有红叉的黑框

在“Chrome”中,播放器按钮可见,但当我点击播放按钮时,没有播放视频。当我们右键单击时,它会显示“将视频另存为...”选项,并且下载的文件可以在桌面媒体播放器上正常运行。

请帮助我正确的代码。

最佳答案

HTML5 Video标签需要支持 Range Requests .

当您提供静态文件时,此支持由服务器内部提供,但在 HttpHandler 的情况下您需要自己提供这种支持。一般来说,这意味着处理 RangeIf-Range请求中的 header 并提供适当的 206 部分内容 响应 Content-Range , DateETagContent-Location标题。

文章Range Requests in ASP.NET MVC – RangeFileResult详细描述了如何创建 ASP.NET MVC ActionResult有了 Range Request 支持 - 你应该能够从 ExecuteResult 移动所有逻辑ProcessRequest 的方法HttpHandler的方法|没有问题。

关于c# - 使用 HTML5 视频标签通过 ashx 处理程序从 sql server blob 播放视频文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12783106/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com