java返回音频文件流给前端 没有总时长
- 作者: 五速梦信息网
- 时间: 2026年04月04日 13:36
java返回音频文件流给前端 没有总时长
- 2024-09-02
浏览器直接播放音频文件,1是直接访问一个html的音频文件,,2 是返回一个Java音频流给浏览器解析. 下面实现一个java的wav文件音频流,可以直接播放音频文件 package org.lib.speech.test; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; impor
最近的一个项目需要按照时间播放mp3文件,例如,播放10分钟的不同音乐. 这就意味着我得事先知道mp3文件的播放时长,以决定播放几遍这个文件. 方案一:Java的方式 找第三方的库,真的感谢这些提供jar包的高手,找到一个项目:jaudiotagger. try { MP3File file = new MP3File("E:\\music\\光辉岁月.mp3"); MP3AudioHeader audioHeader = (MP3AudioHeader)file.getAudioHe
工具: 一个jar包即可:jave-1.0.2.jar 可以切割wav格式的音频文件 完整工程目录 就一个jar包,一个main类 代码: package com.zit; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.nio.ByteBuffer; import it.sauronsoftw
由于项目需要,我需要给系统加权限,这真是一个让人头疼的问题,如果要每个业务方法都加上权限判断逻辑,那真的不敢想象是多么大的工作量,日后有变动的话,我会不会发疯? 所以我必须利用之前学到的AOP编程,在需要进行权限判断的业务方法前后执行一些权限判断,可是呢AOP已经被我忘记了. 幸好,百度网盘里有之前存的视频(JAVA高级进阶(张孝祥老师),shiro(孔浩老师)). 可是项目有时间要求,我必须在最短的时间内完成"加权限"这个任务.所以我在给领导报告我需要多久能研究好权限的时候,首先自己
android使用 MediaMetadataRetriever 获取视频文件的 总时长 和视频的分辨率. 根据该方式获取视频信息可以看出不仅仅可以获取时长和分辨率,还能获取到其他的一些视频信息,不错还是很强大的,不用自己去解析mp4文件了.此demo只是获取的mp4文件,其他的多媒体文件也可以获取到相应信息,比如mp3: private void getPlayTime(String mUri) { android.media.MediaMetadataRetriever mmr = new
在异步请求中要返回文件流,不能使用JQuery,因为$.ajax,$.post 不支持返回二进制文件流的类型,可以看到下图,dataType只支持xml,json,script,html这几种格式,没有blob类型.所以只能选择使用原生Ajax XMLReques对象进行处理 前端代码 function output() { var branchCode = $("#currentBranchCode").val(); var transDate = $("#currentT
方法一: 在项目开发过程中,需要获取音视频文件时长.查询资料后发现 JAVE能够完美得到想要的结果,JAVE项目简介如下: The JAVE (Java Audio Video Encoder) library is Java wrapper on the ffmpeg project. Developers can take take advantage of JAVE to transcode audio and video files from a format to another. I
public static void initType(String path) { try { //1 获取excel文件流 excel xls 文件 暂不支持xlsx if (path.contains("xlsx") || path.contains("XLSX")) { System.err.println("请使用xls格式文件"); return; } InputStream inputStream = new FileInputSt
记录错误,打开文件流一定要关闭并重新打开文件流,不然取的文件内容永远是第一次取的文件内容: /** * 读取配置文件 */ private Properties readProperties() { Properties properties = new Properties(); try { InputStream inputStream = new FileInputStream(filePath); BufferedInputStream in = new BufferedInputStr
需要导入jar包:jave 1.0.2 jar 如果是maven项目,在pom.xml文件中添加: <dependency> <groupId>it.sauronsoftware</groupId> <artifactId>jave</artifactId> <version>1.0.2</version> </dependency> 具体代买如下: /** * 音频文件获取文件时长 * @param sour
/// <summary> 合併PDF檔(集合) </summary> /// <param name="files">欲合併PDF檔之集合(一筆以上)</param> /// <param name="pagesize">纸张大小</param> public static MemoryStream mergePDFStream(MemoryStream[] files, Rectangle
最近在使用AVPlayer播放网络流媒体,发现一个坑: 就是playerItem.duration有可能不返回该网络多媒体资源的播放总时间长度,而是返回了一个奇怪的数据:nan, 因为我通过CMTimeGetSeconds(playerItem.duration)得到的一直是nan, 而几经周折费劲,发现CMTimeGetSeconds(playerItem.asset.duration)返回的却是该网络多媒体资源的正确的播放总时间长度. 这大概可能是AVPlayerItem类的一个bug, 在
download(url) { var xhr = new XMLHttpRequest(); xhr.open('GET', url, true); // 也可以使用POST方式,根据接口 xhr.responseType = "blob"; // 返回类型blob // 定义请求完成的处理函数,请求前也可以增加加载框/禁用下载按钮逻辑 xhr.onload = function () { // 请求完成 if (this.status === 200) { // 返回200 var
/** 下载excel */ downloadExcel(data: Blob): void { var blob = new Blob([data], { type: 'application/vnd.ms-excel application/x-excel;charset=utf-8' }); // application/vnd.openxmlformats-officedocument.spreadsheetml.sheet这里表示xlsx类型 var downloadElement =
上一篇提到图片元信息Exif的提取,当然还有一类音视频文件,也同样存储着许多宝贵的元数据,那就开源到底呗,虽然自己找寻过程也是蛮艰辛坎坷的,大家看后有收获,只求多多传播下,让前人的工作可以更有价值. 此篇对应的Excel催化剂功能实现:第83波-遍历文件夹内文件信息特别是图像.音视频等特有信息 https://www.jianshu.com/p/ad98adc64f0b 音视频元数据的提取,用到了MediaToolkit类库,较其他复杂的方案来说,这个对我这种业余开发者最友好,最后很幸运地相遇了
使用ffmpeg.exe获取文件属性信息,C#中可以在进程外异步调用这个工具,如下: using (System.Diagnostics.Process pro = new System.Diagnostics.Process()) { pro.StartInfo.UseShellExecute = false; pro.StartInfo.ErrorDialog = false; pro.StartInfo.CreateNoWindow = true; pro.StartInfo.Redire
Date ruZhi = new Date("入职年月bai"); Date now = new Date(); //算出du来时间夸格zhi多长 long shiChang = now.getTime()-now.getTIme(); //转换成天 int day = shiChang/(1000*60*24); //转换成想要dao的格式,这里zhuan定为1年=365天 1月=30天 //算出年 int year =day/365; day = day%365; //算出月 in
package com.bytx.ai.service.base.controller.util; import it.sauronsoftware.jave.Encoder;import it.sauronsoftware.jave.MultimediaInfo; import java.io.File; import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutp
1. 打开/关闭文件 1). 打开文件 / fopen 作用: 打开一个文件,将其与文件流联系起来,方便后续的操作 头文件: #include <stdio.h> 函数原型: FILE *fopen(const char *file_name, const char *mode) 参数: file_name: 欲打开的文件名(可包含路径) mode: r(rb): 只读的方式打开文件 (该文件必须存在) r+(rb+): 以读&写的方式打开文件 (该文件必须存在) w(wb): 只写的
转自:http://www.oseye.net/user/kevin/blog/85 一.文件流 FileStream FileStream流继承与Stream类,一个FileStream类的实例实际上代表一个文件流,使用FileStream类可以对文件系统上是文件进行读取.写入.打开和关闭操作. 创建FileStream实例 1..Net提供多种获取FileStream对象的方法,其中构造函数就有10多种,我们看下典型的构造函数顺便讲解下参数含义: public FileStream(stri
热门专题
- 上一篇: java非堆内存泄漏
- 下一篇: Java反射可以调用spring bean吗






