文章简介:
- 1、ffmpeg做视频切割的原理是怎样的?我想做视频定点分割
- 2、使用ffmpeg进行视频文件转换成FLV整理,别人有些讲解,不太明白
- 3、FFmpeg怎么批量给视频加水印
- 4、[已自行解决]ffmpeg如何制作一个视频多个音轨?
- 5、精通视频编辑工具mencoder或ffmpeg的高手进
ffmpeg做视频切割的原理是怎样的?我想做视频定点分割
ffmpeg -i d:\test.mp4 可以查看视频总时长
根据总时长算出每段视频的时长就可以了,我用下面命令没有你说的那样乱啊,衔接的很好。
ffmpeg -ss 0:0:00 -t 0:30:00.00 -i d:\test.mp4 -vcodec copy -acodec copy d:\1.mp4
ffmpeg -ss 0:30:01 -t 0:30:00.00 -i d:\test.mp4 -vcodec copy -acodec copy d:\2.mp4
ffmpeg -ss 1:00:01 -t 0:30:00.00 -i d:\test.mp4 -vcodec copy -acodec copy d:\3.mp4
ffmpeg -ss 1:30:01 -t 0:30:00.00 -i d:\test.mp4 -vcodec copy -acodec copy d:\4.mp4
ffmpeg -ss 2:00:01 -t 0:16:18.03 -i d:\test.mp4 -vcodec copy -acodec copy d:\5.mp4
使用ffmpeg进行视频文件转换成FLV整理,别人有些讲解,不太明白
bat文件是DOS批处理文件,ffmpeg是通过命令行操作转换视频的,所以在java里处理的话也得调用命令行工具,
ffmpeg.bat是自己新建一个txt文件,
内容为:
%1\ffmpeg -i %2 -y -ab 56 -ar 22050 -b 500 -r 15 -s 320*240 %3
exit
然后改后缀为.bat就行了.
那个网页上有这样一行代码:
String cmd = "cmd /c start X:\\ffmpeg.bat \"" + PROJECT_PATH + "\" \"" + INPUT_PATH + "\" \"" + OUTPUT_PATH +"\"";
Runtime.getRuntime().exec(cmd);
其中exec()函数就是调用命令行的,你自己去网上搜这个函数怎么用的。
FFmpeg怎么批量给视频加水印
批量给视频加水印的方法,支持文字水印和图片水印的批量添加:
步骤1,下载软件工具后安装打开,选择左边的【视频水印】功能后,再点击左上角的【添加文件】按钮,将视频导入到软件中,可以同时添加多个视频批量加水印。
步骤2,接下来是设置的环节,水印类型选择“图片类型”;然后上传logo图片;再设置logo水印的缩放比例、透明度、位置以及边距参数。可以在上方预览水印的样式,点击可以放大预览。
步骤3,设置添加水印后视频的输出目录(保存到哪个文件夹),再点击【开始转换】按钮,启动加水印程序。加完水印后软件会自动弹出视频保存的文件夹。
步骤4,打开刚刚处理好的视频可以看到,视频的右上角成功的加上了水印。
[已自行解决]ffmpeg如何制作一个视频多个音轨?
先用ffmpeg查看视频文件信息: # ffmpeg -i a.MPG Input #0, mpeg, from 'a.MPG': Duration: 00:00:32.32, start: 245.117611, bitrate: 8581 kb/s Stream #0.0[0x1e0]: Video: mpeg2video, yuv420p, 720x480 [PAR 32:27 DAR 16:9]。
9800 kb/s, 59.94 tbr, 90k tbn, 59.94 tbc Stream #0.1[0x31]: Subtitle: dvdsub Stream #0.2[0x81]: Audio: ac3, 48000 Hz, 5.1, s16, 384 kb/s Stream #0.3[0x82]: Audio: ac3, 48000 Hz, 5.1, s16, 384 kb/s Stream #0.4[0x80]: Audio: ac3, 48000 Hz, 5.1。
s16, 448 kb/s Stream #0.5[0x83]: Audio: ac3, 48000 Hz, stereo, s16, 160 kb/s Stream #0.6[0x84]: Audio: ac3, 48000 Hz, stereo, s16, 160 kb/s Stream #0.7[0x85]: Audio: ac3, 48000 Hz, stereo, s16。
192 kb/s Stream #0.8[0x2d]: Subtitle: dvdsub Stream #0.9[0x2e]: Subtitle: dvdsub Stream #0.10[0x2f]: Subtitle: dvdsub Stream #0.11[0x24]: Subtitle: dvdsub Stream #0.12[0x30]: Subtitle。
dvdsub Stream #0.13[0x2a]: Subtitle: dvdsub Stream #0.14[0x2b]: Subtitle: dvdsub Stream #0.15[0x2c]: Subtitle: dvdsub Stream #0.16[0x23]: Subtitle: dvdsub。
转制音频文件可以看到Audio的Stream有2-7个,分别获取这几个audio音轨的命令。
精通视频编辑工具mencoder或ffmpeg的高手进
ffmpeg.exe -i F:\闪客之家\闪客之歌.mp3 -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 f:\11.flv
ffmpeg -i F:\01.wmv -ab 56 -ar 22050 -b 500 -r 15 -s 320x240 f:\test.flv
使用-ss参数 作用(time_off set the start time offset),可以从指定时间点开始转换任务。如:
转换文件格式的同时抓缩微图:
ffmpeg -i "test.avi" -y -f image2 -ss 8 -t 0.001 -s 350x240 'test.jpg'
对已有flv抓图:
ffmpeg -i "test.flv" -y -f image2 -ss 8 -t 0.001 -s 350x240 'test.jpg'
-ss后跟的时间单位为秒
Ffmpeg转换命令
ffmpeg -y -i test.mpeg -bitexact -vcodec h263 -b 128 -r 15 -s 176x144 -acodec aac -ac 2 -ar 22500
-ab 24 -f 3gp test.3gp
或者
ffmpeg -y -i test.mpeg -ac 1 -acodec amr_nb -ar 8000 -s 176x144 -b 128 -r 15 test.3gp
ffmpeg参数设定解说
-bitexact 使用标准比特率
-vcodec xvid 使用xvid压缩
-s 320x240 指定分辨率
-r 29.97 桢速率(可以改,确认非标准桢率会导致音画不同步,所以只能设定为15或者29.97)
画面部分,选其一
-b 比特率 指定压缩比特率,似乎ffmpeg是自动VBR的,指定了就大概是平均比特率,比如768,1500这样的
就是原来默认项目中有的
-qscale 数值 以数值质量为基础的VBR,取值0.01-255,约小质量越好
-qmin 数值 设定最小质量,与-qmax(设定最大质量)共用,比如-qmin 10 -qmax 31
-sameq 使用和源同样的质量
声音部分
-acodec aac 设定声音编码
-ac 数值 设定声道数,1就是单声道,2就是立体声,转换单声道的TVrip可以用1(节省一半容量),高品质
的DVDrip就可以用2
-ar 采样率 设定声音采样率,PSP只认24000
-ab 比特率 设定声音比特率,前面-ac设为立体声时要以一半比特率来设置,比如192kbps的就设成96,转换
君默认比特率都较小,要听到较高品质声音的话建议设到160kbps(80)以上
-vol 百分比 设定音量,某些DVDrip的AC3轨音量极小,转换时可以用这个提高音量,比如200就是原来的2倍
这样,要得到一个高画质音质低容量的MP4的话,首先画面最好不要用固定比特率,而用VBR参数让程序自己去
判断,而音质参数可以在原来的基础上提升一点,听起来要舒服很多,也不会太大(看情况调整
例子:ffmpeg -y -i "1.avi" -title "Test" -vcodec xvid -s 368x208 -r 29.97 -b 1500 -acodec aac -ac 2 -ar 24000 -ab 128 -vol 200 -f psp -muxvb 768 "1.***"
解释:以上命令可以在Dos命令行中输入,也可以创建到批处理文件中运行。不过,前提是:要在ffmpeg所在的目录中执行(转换君所在目录下面的cores子目录)。
参数:
-y(覆盖输出文件,即如果1.***文件已经存在的话,不经提示就覆盖掉了)
-i "1.avi"(输入文件是和ffmpeg在同一目录下的1.avi文件,可以自己加路径,改名字)
-title "Test"(在PSP中显示的影片的标题)
-vcodec xvid(使用XVID编码压缩视频,不能改的)
-s 368x208(输出的分辨率为368x208,注意片源一定要是16:9的不然会变形)
-r 29.97(帧数,一般就用这个吧)
-b 1500(视频数据流量,用-b xxxx的指令则使用固定码率,数字随便改,1500以上没效果;还可以用动态码率如:-qscale 4和-qscale 6,4的质量比6高)
-acodec aac(音频编码用AAC)
-ac 2(声道数1或2)
-ar 24000(声音的采样频率,好像PSP只能支持24000Hz)
-ab 128(音频数据流量,一般选择32、64、96、128)
-vol 200(200%的音量,自己改)
-f psp(输出psp专用格式)
-muxvb 768(好像是给PSP机器识别的码率,一般选择384、512和768,我改成1500,PSP就说文件损坏了)
"1.***"(输出文件名,也可以加路径改文件名)
P.S. 版主机器强劲的话,可以多开几个批处理文件,让它们并行处理。
E:\ffmpeg.exe -i I:\1.wmv -b 360 -r 25 -s 320x240 -hq -deinterlace -ab 56 -ar 22050 -ac 1 D:\2.flv
发布于 2022-07-06 16:43:48 回复
发布于 2022-07-06 12:16:14 回复
发布于 2022-07-06 18:44:10 回复
发布于 2022-07-06 10:22:19 回复
发布于 2022-07-06 18:49:16 回复