永中文档之音视频转码播放

716 阅读1分钟

背景介绍

永中文档在线预览软件(DocumentConversionService,简称DCS)是通过解析常用办公文档的格式,提供不同文档格式间的相互转换,实现常用格式文档的阅读等服务。

本文主要介绍下永中在线预览产品中音视频转码基本实现, 支持windows、linux、mac。

二、实现方案

Java示例

windows环境运行批处理命令的方式,linux环境执行shell脚本:

import org.apache.commons.exec.CommandLine;
import org.apache.commons.exec.DefaultExecutor;

public static void main(String[] args) throws Exception {
    String batPath = "F:\fcs\22e12ea6a66141668d2391d5a6d30b76.bat";
    DefaultExecutor executor = new DefaultExecutor();
    CommandLine line = new CommandLine(batPath);
    executor.execute(line);
}

bat文件内容(即需运行的命令):

 java -Djava.awt.headless=true -Xms1024m -Xmx1024m  -jar fcsConvert.jar "-i" "F:\音频\1.aac" "F:\音频\1.mp3" 

前后端交互可通过freemark模板引擎来支持,需后台引freemark的jar包(通过springboot间接引用):

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
    <version>2.1.2.RELEASE</version>
</dependency>

传参:

request.setAttribute("yozoFile", url);

web端应用:

准备好前端模板,引用video标签进行播放音视频源,前端引freemark源www.thymeleaf.org ,模板如下:

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org" dir="ltr" mozdisallowselectionprint>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=yes">
  <meta name="google" content="notranslate">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <title>永中阅读器-音视频</title>
  </head>
  <body>
    <video id="video"  height="835" width="100%">
      <source id="video_path" src="" type="video/mp4" />
    </video>

  </body>
  <script th:inline="javascript">
    window.onload=function(){
      window.videoFile = [[${yozoFile}]];
      var videoSrc = [[${yozoFile}]];//新的视频播放地址
      document.getElementById("video").src=videoSrc;
    };
  </script>
</html>

模板中用EL表达式接收后台参数,如播放源的地址

window.videoFile = [[${yozoFile}]];

三、应用

以上内容只是简单介绍永中音视频转码播放基本流程,可以到永中DCS在线预览体验效果,另外服务平台拥有云预览、云编辑、格式转换三种文档开放能力供开发者和使用者调用,只需到永中云服务平台申请appid即可快速获取在线预览、在线编辑和格式转换的文档处理能力,即可集成到公司产品中。