精华内容
下载资源
问答
  • 利用Python脚本实现批量格式转换(视频转音频) 利用ffmpeg工具和Python,实现批量视频/音频格式转换。本例只给出视频转音频(.wav)方法,更多格式转换可百度ffmpeg用法,修改代码中对应语句即可。 # coding=UTF-8 ...

    利用Python脚本实现批量格式转换(视频转音频)

    利用ffmpeg工具和Python,实现批量视频/音频格式转换。本例只给出视频转音频(.wav)方法,更多格式转换可百度ffmpeg用法,修改代码中对应语句即可。

    # coding=UTF-8
    import os, sys
    import subprocess
    from scipy.io import wavfile
    
    def ffmpeg_VideoToAudio(VideoPath, WavPath):
        # 提取视频路径下所有文件名
        videos = os.listdir(VideoPath)
        count = 0
        for video in videos:
            # 提取视频的全路径名(含路径+文件名)
            video_path = VideoPath + "\\" + video
            # 合成输出音频的全路径名(不含后缀)
            wav_path = WavPath + "\\" + os.path.splitext(video)[0]
            # 提取视频中的音频信息
            strcmd = "ffmpeg -i " + video_path + " -f wav " + wav_path + ".wav"
            subprocess.call(strcmd, shell=True)
    
    VideoPath = r'D:\videos'
    WavPath = r'D:\audios'
    ffmpeg_VideoToAudio(VideoPath,WavPath)
    
    
    展开全文
  • 本功能实现需要用到第三方jar包 jave,JAVE是java调用FFmpeg的封装工具。 spring boot项目pom文件中添加以下依赖 <!-- https://mvnrepository.com/artifact/ws.schild/jave-core --> .../artifa.

    本功能实现需要用到第三方jar包 jave,JAVE 是java调用FFmpeg的封装工具。

    spring boot项目pom文件中添加以下依赖

        <!-- https://mvnrepository.com/artifact/ws.schild/jave-core -->
    		<dependency>
    			<groupId>ws.schild</groupId>
    			<artifactId>jave-core</artifactId>
    			<version>3.1.1</version>
    		</dependency>
         <!-- 以下依赖根据系统二选一 -->
         <!-- win系统平台的依赖 -->
    		<dependency>
    			<groupId>ws.schild</groupId>
    			<artifactId>jave-nativebin-win64</artifactId>
    			<version>3.1.1</version>
    		</dependency>
         <!-- linux系统平台的依赖 -->
    		<dependency>
    			<groupId>ws.schild</groupId>
    			<artifactId>jave-nativebin-linux64</artifactId>
    			<version>3.1.1</version>
    		</dependency>

    Java单类实现代码,复制到Spring boot项目中,用idea编辑器 主方法运行。

    
    import ws.schild.jave.Encoder;
    import ws.schild.jave.EncoderException;
    import ws.schild.jave.MultimediaObject;
    import ws.schild.jave.encode.AudioAttributes;
    import ws.schild.jave.encode.EncodingAttributes;
    
    import java.io.File;
    import java.util.Arrays;
    
    public class VideoToAudio {
    
    
        //要输出的音频格式
        private static String outputFormat="mp3";
    
    
        /**
         * 获得转化后的文件名
         * @param sourceFilePath : 源视频文件路径
         * @return
         */
        public static String  getNewFileName(String sourceFilePath) {
            File source = new File(sourceFilePath);
            String fileName=source.getName().substring(0, source.getName().lastIndexOf("."));
            return fileName+"."+outputFormat;
        }
    
        /**
         * 转化音频格式
         * @param sourceFilePath : 源视频文件路径
         * @param targetFilePath : 目标音乐文件路径
         * @return
         */
        public static void transform(String sourceFilePath, String targetFilePath) {
            File source = new File(sourceFilePath);
            File target = new File(targetFilePath);
            // 设置音频属性
            AudioAttributes audio = new AudioAttributes();
            audio.setCodec(null);
            // 设置转码属性
            EncodingAttributes attrs = new EncodingAttributes();
            attrs.setOutputFormat(outputFormat);
            attrs.setAudioAttributes(audio);
            try {
                // 音频转换格式类
                Encoder encoder = new Encoder();
                MultimediaObject mediaObject=new MultimediaObject(source);
                encoder.encode(mediaObject, target, attrs);
                System.out.println("转换已完成...");
            }  catch (EncoderException e) {
                e.printStackTrace();
            }
        }
    
        /**
         * 批量转化音频格式
         * @param sourceFolderPath : 源视频文件夹路径
         * @param targetFolderPath : 目标音乐文件夹路径
         * @return
         */
        public static void batchTransform(String sourceFolderPath, String targetFolderPath) {
            File sourceFolder = new File(sourceFolderPath);
            if(sourceFolder.list().length!=0){
                Arrays.asList(sourceFolder.list()).forEach(e->{
                  transform(sourceFolderPath+"\\"+e, targetFolderPath+"\\"+getNewFileName(e));
                });
            }
        }
    
    
    
        public static void main(String[] args) {
            batchTransform("C:\\Users\\tarzan\\Desktop\\video","C:\\Users\\tarzan\\Desktop\\audio");
        }
    
    
    
    
    }
    

    运行结果截图

    测试结果

    视频格式为mp4,大小约6.65MB,转为音频格式MP3,大小约1.60MB,转化时间1s左右。

    相关文章推荐

    《java实现抖音、快手短视频解析去除水印下载无水印视频》

    展开全文
  • java视频转音频

    千次阅读 2018-07-27 09:52:18
    * 视频转音频 返回上传的音频地址 * @param videoUrl视频地址 */ public String videoToAudio(String videoUrl,String videoName){ String musicUrl = ""; try { String aacFile = HOME_PATH + TMP_PATH + ...
    package com.amigo.online.provider.manager.util.video.processing;
    
    import java.io.File;
    
    import org.jboss.logging.Logger;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.stereotype.Component;
    
    import com.amigo.online.provider.manager.util.video.uploading.QiniuUtil;
    import com.qiniu.http.Response;
    @Component
    public class FFMpegMusicUtil {
    	
    	private static final Logger logger = Logger.getLogger(FFMpegMusicUtil.class);
    	private static final String HOME_PATH;//获得程序当前路径
        private static String FFMPEG_PATH;//ffMpeg解压的bin地址
        private static String TMP_PATH;//转为音频后 存放的地址
        private static String MUSIC_ADDRESS;
        
    	@Autowired
    	QiniuUtil qiniuUtil;
    	
    	@Value("${ffmpeg_path}")//获取配置文件的参数
    	public void setFFMPEG_PATH(String fFMPEG_PATH) {
    		FFMPEG_PATH = fFMPEG_PATH;
    	}
    	@Value("${tmp_path}")
    	public void setTMP_PATH(String tMP_PATH) {
    		TMP_PATH = tMP_PATH;
    	}
    	@Value("${music_address}")
    	public void setMUSIC_ADDRESS(String mUSIC_ADDRESS) {
    		MUSIC_ADDRESS = mUSIC_ADDRESS;
    	}
    
    	
    	static {
            HOME_PATH = System.getProperty("user.home");
            logger.info("static home path : " + HOME_PATH);
        }
    
        /**
         * 视频转音频 返回上传的音频地址
         * @param videoUrl视频地址
         */
        public String videoToAudio(String videoUrl,String videoName){
            String musicUrl = "";
            try {
            	String aacFile = HOME_PATH + TMP_PATH + videoName + ".aac";
                String command = FFMPEG_PATH + "ffmpeg -i "+ videoUrl + " -y -f ac3 -vn "+ aacFile;
                logger.info("video to audio command : " + command);
                Process process = Runtime.getRuntime().exec(command);
                process.waitFor();
                //上传七牛云
                Response res = qiniuUtil.uploadMusic(aacFile,videoName+".aac"); 
                if(res != null && res.isOK()) {
                	//上传的地址
                	musicUrl =  MUSIC_ADDRESS + videoName+".aac";
                	// 上传成功后删除本地音频文件
                	File file = new File(aacFile);
                	file.delete();
                }else {            	
                	logger.error("音频文件上传失败,音频路径:" + aacFile);
                }
            } catch (Exception e) {
                logger.error("音频提取失败,视频地址:"+videoUrl, e);
            }
            return musicUrl;
        }
    }
    

    yml配置文件

    ffmpeg_path: E:\lwl\util\ffmpeg\bin\
    tmp_path: \Desktop\tmp\

     

    展开全文
  • 做个标记,防止遇到这个坑的人能早日爬出来。 最近项目中做一个音频的功能,是将原来的视频转换为音频(MP3格式)。 问题来了,后台那边找到一个办法将视频直接转换成音频,...原来是后台的大兄弟转音频时比特率...

    做个标记,希望能帮助遇到这个坑的道友能早日爬出来。

    • 最近项目中做一个音频的功能,是将原来的视频转换为音频(MP3格式)。

    • 问题来了,后台那边找到一个办法将视频直接转换成音频,那些音频在不同手机上的播放效果出现问题:显示的时长上多一倍,安卓上出现的频率比较低,而iOS的很多都出现改问题

    • 原因:出现在后台将视频转换成音频的问题上,因为音频中有个叫 “比特率” 的东西在作怪。原来是后台的大兄弟转音频时比特率设为 128kHz,然后改成 64kHz 就正常了


    比特率是指每秒传送的比特(bit)数。单位为 bps(Bit Per Second),比特率越高,传送数据速度越快。声音中的比特率是指将模拟声音信号转换成数字声音信号后,单位时间内的二进制数据量,是间接衡量音频质量的一个指标。 视频中的比特率(码率)原理与声音中的相同,都是指由模拟信号转换为数字信号后,单位时间内的二进制数据量。

    码率和质量成正比,但是文件体积也和码率成正比。

    展开全文
  • 有时候需要将一些视频中的音频提取出来,但是没有专业的工具,很不好办,怎么转换音频文件为视频呢?下面一起来看看快速把视频转换成mp3的方法~    迅捷视频转换器http://www.xunjieshi...
  • 如何将视频转换成音频MP3格式

    千次阅读 2019-03-28 13:44:34
    平常我们看电视如果想要把喜欢的演员声音(对白)保存下来,但是视频文件就太大比较占内存,而音频文件就比较小方便保存、不...因为大多的网络视频都是FLV格式文件,所以就需要把视频转换成音频,常见的FLVMP3。我...
  • Python玩各种多媒体,视频音频到图片

    万次阅读 多人点赞 2020-04-07 19:33:19
    Python玩各种多媒体操作,视频音频到图片 我们经常会遇到一些对于多媒体文件修改的操作,像是对视频文件的操作:视频剪辑、字幕编辑、分离音频视频音频混流等。又比如对音频文件的操作:音频剪辑,音频格式...
  • 这样的方式在当下社会早就落伍了,那么,怎么把抖音视频转成文字呢? 小编今天跟大家分享一款视频音频转文字工具,微信小程序“微转写”可以快速把视频转为文字,如何操作进行视频的转换呢?下面一起来看看吧。 1....
  • 视频or音频转文字的处理方案

    千次阅读 2019-03-26 19:21:57
    1,windows下有软件,百度一搜索一堆,但效果一般,推荐“录音啦” 2,开源软件autosub,archtime(视频添加字幕),其中autosub以来google的语音识别接口,...ffmpeg视频提取音频为wav ffmpeg -i 01-20170326.mp4 ...
  • 如何将MP4视频转换为MP3音频

    千次阅读 2018-11-20 10:45:24
    大家都知道MP4是视频格式,而MP3则是音频格式,MP4想把MP3格式,也可以说是提取视频中的音频或声音,其实这种需求在用户当中还是有的那么如何把视频转换为音频,怎样将MP4转换MP3音乐?    迅捷视频转换器...
  • 转载请注明出处 ...那么如今我们想要实现,将视频转换为字符视频,那么是不是可以认为只要将一部视频全部逐帧拆解成图片,然后采取和以前相同的将图片转换为字符画的算法即可。然后在将这些图片按照原先的视...
  • 视频转成图片 ffmpeg -i /path/to/my/video.mp4 /path/to/output/video-frame-%d.png 图片转成视频 ffmpeg -i video-frame-%0d.png -c:v libx264 -vf "fps=25,format=yuv420p" out.mp4 抽取音频命令 ...
  • 怎样把视频中的音频提取成mp3?

    千次阅读 2020-11-30 18:14:13
    经常会听到一些非常好听的背景音乐,想要保存成mp3 时,发现很多音乐平台要么是付费下载的,要么就是没有合适的版本,那么如何把视频里的背景音乐提取出来呢,其实很简单,只要把视频音频分离,下面小编就给大家...
  • 格式转换(音频/视频

    千次阅读 2018-12-24 18:54:03
    而在网上找到的格式工厂等软件不好用,难上手等情况,这里我推荐大家一个软件,个人觉得很好用,上手快,支持视频转任意格式、音频转任意格式,供大家参考: Apowersoft视频转换王: 百度云链接: 链接:...
  • 项目中用到视频剪切,在网上看到一篇比较全面的博文,Mark一下我们共同学习。感谢原文地址: http://ios.jobbole.com/85309/概述视频处理主要是用到以下这几个类 AVMutableComposition AVMutableVideoComposition ...
  • 音频视频批量合并,及格式转换

    千次阅读 2019-12-06 16:14:32
    很多时候我们下载资源的音频视频是分开的,比如Youtube和Bilibili,那么怎么才能最方便的进行批量合并并且能够实现格式转换呢 工具及必备知识 1.ffmpeg工具,能够使用命令行来执行视频音频的操作,具体了解请...
  • public class VideoView extends SurfaceView { public VideoView(Context context) { this(context, null); } public VideoView(Context context, AttributeSet attrs) { this(context, attrs, 0);...
  • 很多人都用腾讯视频观看电影、电视及各种视频,很多时候,看到精彩的视频想把它们保存下来,并且能够像...那么,以下就是使用迅捷视频转换器将腾讯视频qlv格式转换成mp3音频文件的教程。 1、首先打开腾讯视频 2...
  • 爱奇艺视频相信大家都是用过的,坚持“悦享品质”的理念,以“用户体验”为生命。爱奇艺视频中有非常多的视频资源。所以爱奇艺视频为了保护...那么爱奇艺下载的QSV格式视频如何转换成MP3音频呢? QSV格式转换成...
  • FFmpeg是一套可以用来记录、转换数字音频视频,并能将其转化为流的开源计算机程序。 ffmpeg命令参数如下: 参数名称 输入值 备注 -i ffmpmg -i pingcap-xxx.mp4 输入您要处理的视频文件路径 -b:...
  • 视频音频格式转换全集

    千次阅读 2006-10-12 15:10:00
    No1 DVD Ripper v2.9 软件大小: 1.83 MB 软件语言: 英文 软件类别: 国外软件 / 视频转换 运行环境: Win2003, WinXp, Win2000, NT, WinMe, Win9x 授权方式: 注册版 软件介绍:一个DVD拷贝...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 104,869
精华内容 41,947
关键字:

视频转音频