gpt4 book ai didi

java - 通过 servletvideo java 查看 flv 视频

转载 作者:行者123 更新时间:2023-11-28 10:10:47 29 4
gpt4 key购买 nike

当我尝试在 jwplayer 中查看 webcontent 目录中的文件中的视频时,它会显示并且我可以播放它,但是当我从数据库读取相同文件并以flv 通过 servlet 不显示。谁能帮帮我吗?

在 Html 文件中:

    <script type='text/javascript' src='/ThoughRecord18-8/jwplayer.js'></script>


<script type='text/javascript'>
jwplayer('mediaspace').setup({
'flashplayer': '/ThoughRecord18-8/player.swf',
'file': '/ThoughRecord18-8/videoss?videoId=1',
'controlbar': 'bottom',
'width': '470',
'height': '320'
});
</script>

servlet 是

String videoId = request.getParameter("videoId");
if (videoId != null || !videoId.equals("")) {
VideoDao dao = new VideoDao();
Video video = dao.getVideo(videoId);
Blob blob = video.getVideoBlob();
byte[] buf = new byte[1024];
ByteArrayOutputStream baos = new ByteArrayOutputStream();
InputStream in = null;
int len;
try {
len = (int) blob.length();
byte[] rb = new byte[len];
InputStream readImg = blob.getBinaryStream();
int index = readImg.read(rb, 0, len);

...

            response.reset();
response.setBufferSize(DEFAULT_BUFFER_SIZE);
response.setContentType("video/x-flv");
response.setContentLength(rb.length);
response.setHeader("Content-Disposition", "inline; filename=file.flv");
byte[] content = new byte[DEFAULT_BUFFER_SIZE];
BufferedInputStream is = new BufferedInputStream(
new ByteArrayInputStream(rb));
OutputStream os = response.getOutputStream();
while (is.read(content) != -1) {
os.write(content);
}
is.close();
os.close();**

最佳答案

这不是java问题,JW Player仅支持HTTP伪流和RTMP流。它们都是自己的协议(protocol) - 你不能只在其中传输纯粹的内容。看看这个页面:http://www.longtailvideo.com/support/jw-player/jw-player-for-flash-v5/12534/video-delivery-http-pseudo-streaming ,以及此页面:http://www.longtailvideo.com/support/jw-player/jw-player-for-flash-v5/12535/video-delivery-rtmp-streaming有关 JW Player 如何进行流式传输的信息。

如果您不希望用户必须等待才能获取所有内容,则需要使用其中一种流媒体机制。如果这不是问题,您可以考虑更改 servlet 以将文件写入 webcontent 目录中的某个位置,然后重定向到该文件或其他内容,但我不认为像这样写入响应流会起到作用技巧。

关于java - 通过 servletvideo java 查看 flv 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7448332/

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