当前位置: 首页 > wzjs >正文

公司网站备案怎么做杭州网站建设网页制作

公司网站备案怎么做,杭州网站建设网页制作,做教育的网站有哪些内容吗,如何美化wordpress主题今天发现一个ffmpeg的用法,用子进程直接从标准输入写入输入,就可以从标准流式输出获取转码结果。 这样的好处是不用去写ffmpeg的代码,只需要写对ffmpeg的命令、在输入输出的地方加缓存就能进行流式转码了,方便快捷。 package ffm…

今天发现一个ffmpeg的用法,用子进程直接从标准输入写入输入,就可以从标准流式输出获取转码结果。
这样的好处是不用去写ffmpeg的代码,只需要写对ffmpeg的命令、在输入输出的地方加缓存就能进行流式转码了,方便快捷。

package ffmpegPro;
import java.io.*;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;public class Main {public static void main(String[] argv) {ExecutorService executor = Executors.newFixedThreadPool(8);Future<?> f1 = executor.submit(()->{progress("D:\\data\\audio\\a_out.wav","D:\\data\\audio\\a_output.pcm", executor);});Future<?> f2 = executor.submit(()->{progress("D:\\data\\audio\\b_out.wav","D:\\data\\audio\\b_output.pcm", executor);});try {f1.get();f2.get();} catch (InterruptedException | ExecutionException e) {e.printStackTrace();}executor.shutdown();}public static void progress(String inputPath, String outputPath, ExecutorService executor) {try {// 1. 定义 FFmpeg 命令(示例:H264 → VP9,实时转码)String[] ffmpegCmd = {"ffmpeg","-loglevel", "error","-hide_banner", "-nostats", //关闭日志"-f", "wav",      // 输入格式"-i", "pipe:0",    // 从标准输入读取"-f", "s16le",      // 输出格式"-acodec", "pcm_s16le","-ar", "8000",       // 16kHz"-ac", "1",           // 单声道"pipe:1"           // 输出到标准输出};// 2. 启动 FFmpeg 进程ProcessBuilder pb = new ProcessBuilder(ffmpegCmd);Process process = pb.start();// 3. 获取输入/输出流OutputStream ffmpegStdin = process.getOutputStream(); // FFmpeg 的 stdinInputStream ffmpegStdout = process.getInputStream(); // FFmpeg 的 stdoutInputStream ffmpegStderr = process.getErrorStream();  // FFmpeg 的 stderr(日志)// 4. 异步读取转码后的数据(防止阻塞)// 线程1:读取 FFmpeg 的输出(转码后的数据)executor.submit(() -> {byte[] buffer = new byte[8192];int bytesRead;try {FileOutputStream pcmFile = new FileOutputStream(outputPath);while ((bytesRead = ffmpegStdout.read(buffer)) != -1) {// 处理转码后的数据(示例:写入文件或推送到网络)System.out.println("收到转码数据,长度: " + bytesRead);pcmFile.write(buffer, 0, bytesRead);}} catch (IOException e) {e.printStackTrace();}});// 线程2:打印 FFmpeg 的错误日志(调试用)executor.submit(() -> {try (BufferedReader reader = new BufferedReader(new InputStreamReader(ffmpegStderr))) {String line;while ((line = reader.readLine()) != null) {System.err.println("[FFmpeg] " + line);}} catch (IOException e) {e.printStackTrace();}});// 5. 模拟向 FFmpeg 发送原始数据(示例:从文件读取)try (InputStream rawVideoStream = new FileInputStream(inputPath)) {byte[] buffer = new byte[8192];int bytesRead;while ((bytesRead = rawVideoStream.read(buffer)) != -1) {ffmpegStdin.write(buffer, 0, bytesRead);System.out.println("已发送原始数据,长度: " + bytesRead);}ffmpegStdin.close(); // 关闭输入流,通知 FFmpeg 结束} catch (IOException e) {e.printStackTrace();}// 6. 等待 FFmpeg 结束try {int exitCode = process.waitFor();System.out.println("FFmpeg 进程结束,退出码: " + exitCode);} catch (InterruptedException e) {e.printStackTrace();}} catch (Exception e) {e.printStackTrace();}}
}
http://www.dtcms.com/wzjs/811151.html

相关文章:

  • 番禺网站建设系统接网站建设_网站设计
  • 东莞手机建网站海南第四建设工程有限公司网站
  • 可信赖的网站建设推广破解版 wordpress
  • 有哪个网站做正品港货网站有哪些分类
  • 达州网站制作我做的网站平台百度搜不到
  • 青海手机网站建设wordpress随机推
  • 网站前期定位html5手机网站框架
  • 专业网站建设专业网站设计网站制作属于什么行业
  • 汽车网站建设费用做网站php
  • 云南网站建设哪家强wordpress上传flash
  • 网站目标定义沧浪手机网站建设方案
  • 重庆渝中区企业网站建设联系电话建站公司网站用什么好
  • dw外部网站链接怎么做怎样免费建立个人网站
  • 做直播网站用什么网上空间好企业网站图片渐变效果怎么做
  • a站app下载做企业咨询管理怎么样
  • 白银市网站建设极验 wordpress 表单
  • 如何搞好网站建设住房与住房建设部网站首页
  • 17网站一起做网店图片工具做网站的windowlcd
  • 东昌网站建设公司wordpress 手机显示图片
  • 网站seo视频教程2345实用查询
  • 做爰网站下载如东网站建设
  • 南阳高端网站建设网站seo外链建设
  • 网站开发都需要什么图案设计素材
  • 商家做网站的优点公司装修放假期间有没有工资
  • 个人网站做的类型手机触屏版网站开发
  • 金华网站制作营销搜索 贵州省住房和城乡建设厅网站
  • 做视频分享网站超级外链自动发布工具
  • 分类信息导航网站模板2345网址导航电脑版官网
  • html5移动网站制作教程wordpress 机制
  • 我想做个网站推广怎么做单位网站开发费用是否计入无形资产