mp3 切割
开源的东东很不错,摘了一段好文:
常在听mp3或其他格式音乐的朋友,有时会有特别喜欢的片段,例如副歌的部份会想拿来做手机的铃声。这时候就需要一些处理音效的软体,例如之前提过的 Audacity。其实还有更简便的方法,只要系统中有安装好的ffmpeg,一行指令就OK了,相当简单。让我们分成两步骤来完成他吧!
第一步先用播放软体将想要处理的音乐档桉听一次,把想独立出来部份的时间记下来,看是几分几秒到几分几秒。记好后,第一步也就完成了。
第二步就是下指令了。
# ffmpeg -i input.mp3 -ss hh:mm:ss -t hh:mm:ss -acodec copy output.mp3
参数说明:
-ss : 指定从那裡开始
-t : 指定到那裡结束
-acodec copy : 编码格式和来源档桉相同(就是mp3)
这方法不只是MP3可以用,其他的许多格式也都适用,只是输出档桉的副档名就要跟着改一改了。
以下举个例子,如果我想把aa.mp3中的1分12秒到1分42秒的地方切出来,然后存成bb.mp3,指令如下
# ffmpeg -i aa.mp3 -ss 00:01:12 -t 00:01:42 -acodec copy bb.mp3
就是这么简单,而且处理速度超级快。一下子完成了。
FFMPEG还有一个不错的脚本,值得推荐
| #!/bin/bash | |
| #cut/join videos using ffmpeg without quality loss | |
| if [ -z $1 ] || [ -z $2 ]; then | |
| echo "Usage:$0 c[ut] seconds <File>" | |
| echo " eg. $0 c 10 80 example.mp4" | |
| echo " eg. $0 c 00:00:10 00:01:20 example.mp4" | |
| echo "Usage:$0 j[oin] <FileType>" | |
| echo " eg. $0 j avi" | |
| exit | |
| fi | |
| case "$1" in | |
| c) | |
| echo "cuttig video..." | |
| fileName=$(echo $4 | cut -f 1 -d '.') | |
| fileType=$(echo $4 | cut -f 2 -d '.') | |
| ffmpeg -i $4 -ss $2 -t $3 -acodec copy -vcodec copy $fileName-$2-$3.$fileType | |
| ;; | |
| j) | |
| echo "joinning videos..." | |
| rm temp_list.txt | |
| for f in `ls *.$2 | sort -k 1n -t '.'`; do echo "file '$f'" >> temp_list.txt; done | |
| #printf "file '%s'\n" ./*.$2 > temp_list.txt | |
| ffmpeg -f concat -i temp_list.txt -c copy output.$2 | |
| rm temp_list.txt | |
| ;; | |
| *) | |
| echo "wrong arguments" | |
| ;; | |
| esac | |
| exit |
github网址:https://gist.github.com/imcaspar/8771268
另外还有一个不错的方案:
libmad是一个开源mp3解码库,其对mp3解码算法做了很多优化,性能较好,很多播放器如mplayer、xmms等都是使用这个开源库进行解码的;如果要设计mp3播放器而又不想研究mp3解码算法的话,libmad是个不错的选择
可以试试,我觉得第一个如果可以足以,并且ffpmg支持的解码更为强大。
mp3 切割的更多相关文章
- 【转】如何将FLAC格式转为MP3格式
原文网址:http://jingyan.baidu.com/ae/3aed632e65708470108091ca.html FLAC全称为无损音频压缩编码,FLAC格式又称无损格式 不会破坏原有的音 ...
- Day 18:SequenceInputStream、合并切割mp3、对象输入输出流对象
SequenceInputStream用例题讲述用法 需求:1.把a.txt与b.txt 文件的内容合并 2.把a.txt与b.txt .c.txt文件的内容合并 import java.io.Fil ...
- ubuntu切割mp3文件
ffmpeg -i InputFile -vn -acodec copy -ss 00:00:00 -t 00:01:32 OutPutFile
- 自动分割mp3等音频视频文件的脚本
由于种种关系,我需要对一批mp3文件进行分割(切割).每个音频文件大约1小时,需要切成每10分钟1个文件,文件名要带序号.手工分割工作量太大,不符合我等“懒人”的做法.于是找到了大名的”格式工厂“. ...
- Linux下视频转换工具:转换,切割,连接,
首先当然是需要安装ffmpeg软件包,可以直接从源中进行安装!但我安装后并不能成功执行后面所需要执行的转换命令,所以我只能重新从源码编译安装ffmpeg: (1)下载ffmpeg源码包,注意版本不能太 ...
- Nginx (二) Nginx的反向代理负载均衡以及日志切割
Nginx是一个高并发,高性能的服务器,可以进行反向代理以及网站的负载均衡.这些功能的运用都在配置文件中,也就是Nginx安装目录下的conf/nginx.conf. nginx.conf 1. 先来 ...
- python+ffmpeg切割视频
什么是ffmpeg 1.1 简介 FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件).它提供了录制.转换以及流化音视频的完整解决方案.它包 ...
- ape 文件 转化为mp3 文件
试了很多软件,最后才发觉 any-audio-converter最好用. 可以吧ape 按 cue切割好,然后转化成 MP3 官网可以免费下载: https://www.any-audio-conve ...
- java切割音频文件
工具: 一个jar包即可:jave-1.0.2.jar 可以切割wav格式的音频文件 完整工程目录 就一个jar包,一个main类 代码: package com.zit; import java.i ...
随机推荐
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(五)-- Filter
在上一篇里,介绍了中间件的相关内容和使用方法.本篇将介绍Asp.Net Core MVC框架的过滤器的相关内容和使用方法,并简单说明一下与中间件的区别. 第一部分.MVC框架内置过滤器 下图展示了As ...
- Asp.net页面跳转Session丢失问题
原本去年在做项目时,写好的一记篇博客分享给大家. Asp.net页面跳转Session丢失问题 编写人:CC阿爸 2014-4-2 l 近来在做泛微OA与公司自行开发的系统集成登录的问题.在使用 ...
- 基于HTML5 的人脸识别活体认证
近几年,人脸识别技术在身份认证领域的应用已经有了较多应用,例如:支付宝.招行的取款.养老金领取等方面,但在杜绝假冒.认证安全性等方面,目前还是一个比较需要进一步解决的课题,特别是在移动端的活体认证技术 ...
- 用FileInputStream读文件,字节数组接收,不知道文件的大小时怎么办
FileInputStream in = new FileInputStream(文件路径File); byte[] buffer = new byte[in.available()]; in.rea ...
- SRF之数据字典
框架提供数据字典的配置和显示的功能 字典以编码作为标识,用varchar(50)类型保存字典的编码. 字典的用法 1.在代码里边需要查询字典信息的 可用 Components.DataDict ...
- [转载]--用Python 自动安装软件
脚本使用了 Python 2.3 + Com 对象,所以你的系统必须安装Python2.3或更高版本同时必须安装 Mark Hammond's Win32all 模块 (特别感谢Mark Hamm ...
- 关于消除超长的case列表的一个思路
最近项目里面涉及和低层通信的一个模块,因为需要定义通信协议,然后一大堆指令,定义一个枚举的话就能看到几十上百的数据项,匹配操作的时候,那么问题来了,尼玛,这么多的case看着就头晕,就有了一个想法:怎 ...
- ping通IP,telnet 3306不通
一个同事装的MySQL数据库,无法连接.1.查看权限2.查看防火墙检查用户权限,防火墙都没问题,就是无法连接,能ping通,但是telnet 3306 端口无法成功.检查了下数据库配置 ...
- DTW
DTW主要是应用在孤立词识别的算法,用来识别一些特定的指令比较好用,这个算法是基于DP(动态规划)的算法基础上发展而来的.这里介绍语音识别就先介绍下语音识别的框架,首先我们要有一个比对的模版声音,然后 ...
- 随机数范围扩展(如rand7()到rand10())(转)
题目:已知有个rand7()的函数,返回1到7随机自然数,让利用这个rand7()构造rand10() 随机1~10.分析:要保证rand10()在整数1-10的均匀分布,可以构造一个1-10*n的均 ...