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

四川做网站的公司哪家好百度指数快刷软件

四川做网站的公司哪家好,百度指数快刷软件,疫情防控工作情况报告,免费网站论坛文章目录 一、工具简介二、使用golang获取时间长 一、工具简介 这些工具都是与多媒体处理和流媒体相关的开源工具,它们都属于 FFmpeg 多媒体框架。 FFmpeg 是一个用于处理多媒体内容(音频、视频、图像等)的命令行工具。它可以执行各种各样…

文章目录

  • 一、工具简介
  • 二、使用golang获取时间长

一、工具简介

这些工具都是与多媒体处理和流媒体相关的开源工具,它们都属于 FFmpeg 多媒体框架。

  • FFmpeg

是一个用于处理多媒体内容(音频、视频、图像等)的命令行工具。它可以执行各种各样的操作,包括转码、剪辑、合并、分离、编码、解码等。FFmpeg 是一个功能强大且广泛使用的工具,可以在多种平台上运行。

  • FFplay

是 FFmpeg 提供的一个简单的媒体播放器,它可以播放各种格式的音频和视频文件。FFplay 是基于 FFmpeg 库构建的,它提供了一个轻量级的命令行界面,可用于快速播放多媒体文件,适用于测试和简单的播放任务。

  • FFprobe

是一个用于分析多媒体文件的工具。它提供了详细的信息,包括多媒体文件的编解码器、格式、流信息等。FFprobe 可以帮助用户了解多媒体文件的特性,例如分辨率、帧率、比特率等,这对于诊断和处理多媒体文件非常有用。

  • FFserver

是一个流媒体服务器,可以用于实时转码和分发音频/视频流。它可以接受来自各种来源(如摄像头、音频接口等)的多媒体流,并将其转码为不同的格式和分辨率,然后通过网络分发给客户端。FFserver 可以用于构建自己的流媒体平台,例如音视频直播服务或视频点播服务。

二、使用golang获取时间长

package mainimport ("bufio""fmt""os/exec""strconv"
)// getDuration 通过调用 ffprobe 来获取音视频文件的时长// 函数接收一个字符串参数 filePath,表示音视频文件的路径。
// 函数返回两个值:一个整数表示时长(秒),一个 error 表示可能发生的错误。
func getDuration(filePath string) (int, error) {// 使用 exec.Command 创建一个新的命令,调用 ffprobe 并带上一系列参数来指示它只输出文件的时长。cmd := exec.Command("/Users/lijie/workspace/ffmpeg-lijie/ffprobe", "-v", "error", "-show_entries", "format=duration", "-of", "default=noprint_wrappers=1:nokey=1", filePath)//通过 StdoutPipe 方法获取命令的标准输出流,以便我们可以读取 ffprobe 的输出。stdout, err := cmd.StdoutPipe()//如果在获取输出流时发生错误,则返回错误。if err != nil {return 0, err}//启动 ffprobe 命令。如果启动失败,则返回错误。if err := cmd.Start(); err != nil {return 0, err}//创建一个新的 bufio.Scanner 来读取 ffprobe 的标准输出。scanner := bufio.NewScanner(stdout)//使用 Scan 方法读取输出的第一行(即文件的时长)。if scanner.Scan() {//scanner.Text() 获取读取到的字符串。durationStr := scanner.Text()//使用 strconv.ParseFloat 将时长字符串转换为浮点数。duration, err := strconv.ParseFloat(durationStr, 64)//如果转换失败,则返回错误。if err != nil {return 0, err}//将浮点数时长转换为整数(秒),并返回,没有错误。return int(duration), nil}return 0, fmt.Errorf("no duration found")}// formatDurationSeconds 函数将秒数转换为分秒格式的字符串。
// 函数接收一个整数参数 seconds,表示时长(秒)。
// 函数返回一个字符串,表示时分秒格式的时长。
func formatDurationSeconds(seconds int) string {//计算时钟数,通过将总秒数除以3600。hours := seconds / 3600//计算分钟数,通过将总秒数除以60。minutes := (seconds % 3600) / 60//计算剩余的秒数,通过取总秒数除以60的余数。seconds = seconds % 60//根据秒数自动判断是否包含小时,并相应地格式化输出if hours > 0 {//根据秒数自动判断是否包含分钟,并相应地格式化输出if minutes > 0 {//使用 fmt.Sprintf 格式化分钟和秒数为 "MM:SS" 格式的字符串,并确保分钟和秒数都是两位数(不足两位时前面补0)。return fmt.Sprintf("%02d:%02d:%02d", hours, minutes, seconds)} else {return fmt.Sprintf("%02d:%02d", hours, seconds)}} else if minutes > 0 {return fmt.Sprintf("%02d:%02d", minutes, seconds)} else {return fmt.Sprintf("00:%02d", seconds)}}
func main() {//定义音视频文件的路径,并替换为实际的文件路径。filePath := "/opt/www/nginx/html/pages/resource/input.mp3"//调用 getDuration 函数获取文件的时长(秒)。durationSeconds, err := getDuration(filePath)//如果在获取时长时发生错误,则打印错误并退出程序。if err != nil {fmt.Println("Error getting duration:", err)return}fmt.Println("Duration:", durationSeconds)//调用 formatDurationSeconds 函数将时长(秒)转换为时分秒格式的字符串。durationFormatted := formatDurationSeconds(durationSeconds)fmt.Printf("Duration: %s\n", durationFormatted)
}
http://www.hkea.cn/news/386556/

相关文章:

  • 深圳网站建设科技有限公司注册一个网站
  • 网站设计改版seo关键词优化推广价格
  • 做网站什么主题比较好上海网站seo诊断
  • 设计苹果手机的网站病毒什么时候才能消失
  • 国外做化工产品的网站自媒体发布平台
  • 怎么做资源类网站百度搜索热度排名
  • 大片网站建设seo关键词排名优化评价
  • 网络营销推广课程培训苏州seo门户网
  • 做盗版影视网站如何给公司网站做推广
  • 做网站付费流程郑州seo技术
  • 云南网站开发有哪些实用的网络推广方法
  • 央视新闻最新消息今天什么叫seo
  • 网站建设的意义徐州百度推广
  • 建设网站建设的目标百度云盘资源
  • 个体工商户是否能够做网站在线生成个人网站源码
  • 临沂高端网站建设厦门网站推广费用
  • 网站模版友链交易交易平台
  • 武汉做网站找谁百度导航是哪个国家的
  • wordpress互动游戏黄石seo诊断
  • 网页设计作品下载志鸿优化设计
  • 宾馆网站制作seminar是什么意思
  • 网站建设的进度表爱站查询工具
  • 深圳聘请做网站人员长春刚刚最新消息今天
  • 汽配人网做网站沈阳网站seo公司
  • 网站 短链接怎么做网站建设网站定制
  • 网站开发凭证做什么科目百度推广关键词多少合适
  • 网站正在建设 h5模板新闻热点
  • 龙岗公司网站建设怎么上百度搜索
  • 七米网站建设网站自动推广软件免费
  • 余姚公司做网站跨境电商怎么做