java播放本地声音流_前端Web界面播放Java后端返回的音频流,视频流
最近在做一个大屏系统时,需要在界面中播放一段视频,由于跨域问题,最后决定使用视频流的方式,把音频文件传到前端进行播放。
后端Java代码如下:
@RequestMapping(value = "/videoFlow", method = RequestMethod.GET)
public void videoFlow(HttpServletRequest request,
HttpServletResponse httpServletResponse, String fileName) {
String templeId = request.getParameter("templeId");// 寺庙ID
String propName[] = new String[] { "fileSubordinateId", "fileFrom" };
Object propValue[] = new Object[] { Long.parseLong(templeId), 1 };
List tfList = templeFileService.queryByProerties(propName,
propValue);
String fileSrc = null;
if (StringUtils.isNotBlank(tfList)) {
for (TempleFile tf : tfList) {
if (tf.getFileType().intValue() == 2) {
fileSrc = tf.getFileSavePath();
break;
}
}
}
byte[] bytes = changeTobyte(fileSrc);
httpServletResponse.setContentType("application/octet-stream");
httpServletResponse.setContentLength(bytes.length);
try {
httpServletResponse.getOutputStream().write(bytes);
} catch (IOException e) {
System.out.println("IO异常----");
}
}
public byte[] changeTobyte(String filePath) {
byte[] buffer = null;
try {
File file = new File(filePath);
FileInputStream fis = new FileInputStream(file);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte[] b = new byte[1024];
int n;
while ((n = fis.read(b)) != -1) {
bos.write(b, 0, n);
}
fis.close();
bos.close();
buffer = bos.toByteArray();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return buffer;
}
前端代码
如下所示:
结果上面两步,就可以在前端正常播放map4文件了。
java播放本地声音流_前端Web界面播放Java后端返回的音频流,视频流相关推荐
- Java和php访问数据库对比_在Web开发方面Java和PHP的比较
比较PHP和JSP这两个Web开发技术,在目前的情况是其实是比较PHP和Java的Web开发.以下是我就几个主要方面进行的比较: 一. 语言比较 PHP是解释执行的服务器脚本语言,首先php有简单容易 ...
- java中execution的作用_一文初步了解Java虚拟机
大家都知道,Java中JVM的重要性,学习了JVM你对Java的运行机制.编译过程和如何对Java程序进行调优相信都会有一个很好的认知. 什么是JVM? JVM(Java Virtual Machin ...
- java 调用webapi json_java通过url调用web api并接收其返回的json
java通过url调用webapi并接收其返回的json数据,但现在结果总是:{"result":4,"data":{}}(未认证:),帮助文档如下:API使用 ...
- java五子棋代码详解_代码详解:Java和Valohai的深度学习之旅
全文共10735字,预计学习时长22分钟或更长 有一款生命周期管理工具(也称云服务)叫做Valohai,它有着友好的用户界面和简洁的布局设计. 许多有关Valohai的案例和文档都是基于Python和 ...
- 开发转测试没人要_前端开发,测试,后端,该如何选择?
一般来说前端会比后端简单一些的,初学者或者转行可能考虑前端多一点,但是后端开发的薪水又比前端高一些,就是比较枯燥. 前端开发 我目前一直在自学前端,从网上找资料,然后听课,只要是对编程有兴趣,应该都能 ...
- java实现次方的运算_【技术干货】Java 面试宝典:Java 基础部分(1)
海牛学院的 | 第 616 期 本文预计阅读 |18 分钟 Java 基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法, ...
- java小程序详解_微信小程序登录Java后台接口(详解,附示例代码)
首先看一下官方文档 地址:微信小程序官方文档API登录接口 我们先对官方给的时序图进行简单的分析 1.当小程序调用wx.login()时,会获得一个code(临时登录凭证),然后我们需要用wx.req ...
- html怎样手机播放本地视频播放器,手机优酷怎么播放本地视频 本地文件导入方法...
优酷下载的视频一般都会是KUX格式,只能使用优酷进行播放,比较霸道,那么反过来优酷是否可以播放本地视频呢?自然是可以的,下面就跟小编了解下吧. 方法一:找到视频选择打开方式 首先在智能手机的文件管理中 ...
- VLC更改设置,播放本地H264和H265流媒体文件和播放帧率
VLC更改设置,播放本地H264和H265流媒体文件 步骤1:单击"工具"->"偏好设置".在"偏好设置"对话框的左下角的" ...
最新文章
- 第二十八课.AlphaGo实例分析
- MySQL数据库是非关系_MySQL(数据库)基础知识、关系型数据库yu非关系型数据库、连接认证...
- python闹钟界面程序_「Python编程」自由管理时间之编写一个小闹钟起床
- 如何从 0 到 1 参与 Flink 社区?
- Selenium下载页面上的图片
- 三相逆变器双pi控制器参数如何调节_单相光伏并网逆变器的环路控制
- 结构体所占内存的字节数如何计算?
- 产品经理:个人能力提升方法
- win7/ubuntu18 双系统安装和卸载
- js 只准输入数字_javascript 限制只允许输入数字的几种方法
- linux 内核配置简介
- php 10到50的随机数,【单选题】php中以下能输出1到10之间的随机数的是( )
- imperva-syslog日志配置方法
- 介绍一款最受欢迎的.NET 开源UI库
- kubernetes 与 rook 架构说明
- JSON是什么,主要用来做哪方面的工作?
- 激光打印机的工作原理2
- TCP/IP协议学习( 三 ) ---- ping原理 和 ICMP
- html3d模型渲染,【SVG】纯clip-path打造的3D模型渲染器
- 计算机打游戏的硬件,电脑玩游戏主要看显卡吗?小白装机硬件选择误区 (全文)...