VOS系统录音文件REC转MP3,REC录音转WAV与WAV转MP3具体项目中实现方式,以及占用空间变化!

2024-05-01 02:36

本文主要是介绍VOS系统录音文件REC转MP3,REC录音转WAV与WAV转MP3具体项目中实现方式,以及占用空间变化!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前面讲解了VOS3000系统的录音REC转MP3的安装步骤,不清楚的,可以移步这里查看:http://t.csdnimg.cn/OXNT9 或者 点击这里查看安装步骤,下面继续讲下他们的使用方法,以及实际项目中的运用,首先我们需要明确我们的实际需求是什么,我们假设一个项目,客户需要自动下载录音到指定路径,并且下载的录音格式为MP3格式。

  首先我们在VOS服务器里面创建脚本完成当天的录音打包工作,下面是我写的一个简单脚本内容

[root@hcss-ecs-b3de ~]# cat recmv.sh 
#!/bin/bash
# 切换到源目录  
cd /home/kunshi/record
# 获取当前日期和昨天的日期  
today=$(date +"%Y%m%d")  

# 获取当前日期和昨天的日期  
yesterday=$(date -d "yesterday" +%Y%m%d)  
# 定义目标目录  
target_dir=/home/uns
target_dir1=/home/kunshi/record
# 创建目标日期目录  
target_dir_path="${target_dir}/${today}"  
mkdir -p "$target_dir_path"  
# 初始化计数器  
declare -i sum=0  
# 遍历1到24的数字  
for i in {01..24}; do  
    # 将/home/kunshi/record目录下当天日期目录下的所有REC文件移动到目标日期目录下  
    mv "${target_dir1}/${today}/${i}"/*.REC "$target_dir_path"  
done  
# 切换到目标目录  
cd "$target_dir"  
# 判断目标日期目录下是否有REC文件,如果有则打包成tar.gz  
if [ -d "$target_dir_path" ] && [ "$(find "$target_dir_path" -type f -name '*.REC' | wc -l)" -gt 0 ]; then  
    tar_file="${today}.tar.gz"  
    tar -czvf "$tar_file" -C "$target_dir" "$today"  
    echo "成功创建压缩包 ${tar_file}" >> /opt/uns/rz.txt  
else  
    echo "目标文件夹 ${target_dir_path} 不存在或没有REC文件" >> /opt/uns/rz.txt  
fi  
echo "ok"
# 删除/home/uns/ 目录下昨天的tar.gz
 rm -rf /home/uns/${yesterday}.tar.gz
echo "ok"  >> /opt/uns/rz.txt
[root@hcss-ecs-b3de ~]# 

经过上述步骤,我们就可以得到当天的所有录音文件,我们再下载到本服务器,使用MDD工具进行REC格式转换即可得到我们需要的MP3格式音频文件了!

假设你需要转换的REC文件都i在目录 /home/uns 路径下,我们可以使用下面命令完成转换

mdd -t wav -p /home/uns/* 

#这表示使用 mdd转换/home/uns目录下的所有REC文件为 wav格式,如果我们需要转换为MP3,我们直接替换wav为MP3即可

mdd -t mp3 -p /home/uns/* 

也可以编写脚本来自动化完成,这里省略了!

下面我们看看占用的文件大小吧!

154K转换后只有36K,那么我们再看看转换为 WAV格式的

很明显,WAV格式是非常占用空间的,但是绝大多数外呼系统都采用的是WAV格式,因此非常暂用硬盘空间,我们下面看把WAV转换为MP3能占用多少

这里我们很明显就可以看见,虽然两个都是MP3,但是大小是不一样的,使用命令

ffmpeg -i test.wav test2.mp3 

#转换的MP3明细比REC使用mdd转换的大很多!如果你需要的语音需要用于外呼系统使用,推荐使用MDD转换为wav格式使用,如果你需要极速压缩空间,那么推荐使用MDD工具转换MP3使用!好了,祝您好运,如果你项目需要帮助的,请私信!

这篇关于VOS系统录音文件REC转MP3,REC录音转WAV与WAV转MP3具体项目中实现方式,以及占用空间变化!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/950517

相关文章

golang 对象池sync.Pool的实现

《golang对象池sync.Pool的实现》:本文主要介绍golang对象池sync.Pool的实现,用于缓存和复用临时对象,以减少内存分配和垃圾回收的压力,下面就来介绍一下,感兴趣的可以了解... 目录sync.Pool的用法原理sync.Pool 的使用示例sync.Pool 的使用场景注意sync.

IDEA实现回退提交的git代码(四种常见场景)

《IDEA实现回退提交的git代码(四种常见场景)》:本文主要介绍IDEA实现回退提交的git代码(四种常见场景),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.已提交commit,还未push到远端(Undo Commit)2.已提交commit并push到

Kotlin Compose Button 实现长按监听并实现动画效果(完整代码)

《KotlinComposeButton实现长按监听并实现动画效果(完整代码)》想要实现长按按钮开始录音,松开发送的功能,因此为了实现这些功能就需要自己写一个Button来解决问题,下面小编给大... 目录Button 实现原理1. Surface 的作用(关键)2. InteractionSource3.

java对接第三方接口的三种实现方式

《java对接第三方接口的三种实现方式》:本文主要介绍java对接第三方接口的三种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录HttpURLConnection调用方法CloseableHttpClient调用RestTemplate调用总结在日常工作

golang中slice扩容的具体实现

《golang中slice扩容的具体实现》Go语言中的切片扩容机制是Go运行时的一个关键部分,它确保切片在动态增加元素时能够高效地管理内存,本文主要介绍了golang中slice扩容的具体实现,感兴趣... 目录1. 切片扩容的触发append 函数的实现2. runtime.growslice 函数gro

golang实现动态路由的项目实践

《golang实现动态路由的项目实践》本文主要介绍了golang实现动态路由项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习... 目录一、动态路由1.结构体(数据库的定义)2.预加载preload3.添加关联的方法一、动态路由1

Golang interface{}的具体使用

《Golanginterface{}的具体使用》interface{}是Go中可以表示任意类型的空接口,本文主要介绍了Golanginterface{}的具体使用,具有一定的参考价值,感兴趣的可以了... 目录一、什么是 interface{}?定义形China编程式:二、interface{} 有什么特别的?✅

使用Python实现调用API获取图片存储到本地的方法

《使用Python实现调用API获取图片存储到本地的方法》开发一个自动化工具,用于从JSON数据源中提取图像ID,通过调用指定API获取未经压缩的原始图像文件,并确保下载结果与Postman等工具直接... 目录使用python实现调用API获取图片存储到本地1、项目概述2、核心功能3、环境准备4、代码实现

MySQL数据库实现批量表分区完整示例

《MySQL数据库实现批量表分区完整示例》通俗地讲表分区是将一大表,根据条件分割成若干个小表,:本文主要介绍MySQL数据库实现批量表分区的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录一、表分区条件二、常规表和分区表的区别三、表分区的创建四、将既有表转换分区表脚本五、批量转换表为分区

windows和Linux安装Jmeter与简单使用方式

《windows和Linux安装Jmeter与简单使用方式》:本文主要介绍windows和Linux安装Jmeter与简单使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows和linux安装Jmeter与简单使用一、下载安装包二、JDK安装1.windows设