织梦CMS - 轻松建站从此开始!

罗索实验室

FFmpeg MEncoder FLV 3GP FlvMdi Avisynth 加水印参数

jackyhwei 发布于 1970-01-01 08:00 点击:次 
注意:这只是ffmpeg,mencoder等现成工具使用方法介绍,并非自行实现此功能的代码。
TAG:

AviSynth+ffmpeg转换3GP为FLV加水印。
之前的转换用的是mencoder进行非FLV格式到FLV格式的转换,感觉比FFMPEG支持的格式多的多,当然这里的版本是直接从官方下载的,我自己对编译不懂也没有时间去学,毕竟视频方面的知识比较深一时也是学不来的。

前天测试告诉我mencoder转换3gp后声音消失了,多试了几次果然是这样,baidu和google两处搜了N久楞是没有找到答案。后来用FFMPEG进行转换,声音还算可以,于是打算遇到3GP转FLV的时候,就用FFMPEG进行转换,只是FFMPEG不支持加水印的功能。后来重点就是去找给FFMPEG加水印的方法,还好,之前一直没有引起注意的AVS(AviSynth的简称)这时候才露出光芒来。通过它就可以支持FFMPEG调用水印,这样以来支持的水印表现形式也比mencoder只能用srt丰富的多。

下面将这两天从网上东拉西撤的代码做个备忘。
-------------------------------------------------------------------------------------------------————————

AviSynth部分
video = DirectShowSource("F:\work\sy\cgp\dknz.3gp",15).BilinearResize(320,240)
logo = ImageSource("bzhe.jpg") //被遮罩的图片
logomask = ImageSource("zhe.jpg")//遮罩图片
overlay(video,logo,mask=logomask)
-------------------------------------------------------------------------------------------------————————

ffmpeg部分
cd
ffmpeg.exe -i *.avs -ab 56 -ar 22050 -b 500 F:\work\sy\cgp\dknzs.flv
pause
//为了方便使用这里将FFMPEG部分做成批处理了。
-------------------------------------------------------------------------------------------------————————备


使用到的软件:AviSynth_260402、ffmpeg
插件:从暴风影音取过来的VSFilter.dll文件。
------------------------------------------------------------------------------------------------------------------

---------
当没有安装暴风影音的时候竟然不能成功转换,回头看看具体问题。
测试期间给ffmpeg加了-sameq这个参数。是按照原视频的质量进行转换的,速度倒是挺可以,质量也比不用-sameq参数生成的马赛

克效果强的多,甚至将原来小尺寸放大后依然是清晰的,不过代价是生成的文件大的超互想象。

 

FFmpeg MEncoder FLV 3GP FlvMdi Avisynth 加水印参数
Mencoder 转 flv
mencoder -ffourcc FLV1 -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -of lavf -oac mp3lame -

lameopts aq=9:cbr:br=64:vol=2 -ovc lavc -lavcopts vcodec=flv:vbitrate=200:acodec=mp3:abitrate=56 -vf

scale=320:270,expand=320:270:::1,crop=320:270:0:0 -ofps 18 -srate 22050 input.xxx -o output.flv

Mencoder 转 avi
mencoder.exe -oac mp3lame -lameopts aq=7:cbr:br=64 -srate 32000 -vf scale=220:176 -ovc lavc -ffourcc DX50 -lavcopts

vcodec=mpeg4:vbitrate=320 "input.xxx" -o "output.avi"
mencoder ..\v\wmv.wmv -o ..\v\wmv-3.flv -of lavf -oac mp3lame -lameopts abr:br=56 -srate 22050 -ovc lavc -lavcopts

vcodec=flv:vbitrate=500:mbd=2:mv0:trell:v4mv:cbp:last_pred=3

mencoder -oac mp3lame -lameopts aq=7:cbr:br=64 -srate 32000 -vf scale=220:176 -ovc lavc -ffourcc DX50 -lavcopts

vcodec=mpeg4:vbitrate=320 "input.xxx" -o "output.avi"

mencoder -oac mp3lame -lameopts aq=7:cbr:br=64 -srate 22050   -vf scale=320:-3 -ovc xvid -xvidencopts bitrate=600  

  "wmv.wmv" -o "wmv.avi"

mencoder -oac lavc -lavcopts acodec=mp2:abitrate=64 -srate 22050   -vf scale=320:-3 -ofps 15 -ovc xvid -xvidencopts

bitrate=400   rmvb.rmvb -o rmvb.avi

mencoder 1.rmvb -oac mp3lame -lameopts preset=64 -ovc xvid -xvidencopts bitrate=600 -of avi -o rmvb.avi

RMVB转FLVCODE
mencoder -vf scale=320:240 -ffourcc FLV1 -of lavf -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -

ovc lavc -lavcopts vcodec=flv:vbitrate=200 -srate 22050 -oac lavc -lavcopts acodec=mp3:abitrate=56 ok\1.rmvb -o

ok\rmvb.flv

利用ffmpeg的这两个参数,可以控制让ffmpeg来将一个大video劈分成许多小段的独立播放的文件。
-ss time_off        set the start time offset
-t duration       set the recording time

Mencoder截段参数:
-ss 0
-endpos 120

FFmpeg 转 3gp:
ffmpeg -y -i **.** -ac 1 -acodec amr_nb -ar 8000 -ab 24 -s 128x96 [-vcodec mpeg4] -b 40k -r 8 **.3gp

FFmpeg 转 flv:
ffmpeg -i inputfile.xxx -ab 56 -ar 22050 -qmin 2 -qmax 16 -b 320k -r 15 -s 320x240 outputfile.flv

FFmpeg截图参数
对视频文件截图:
ffmpeg -i xxx.xxx -y -f image2 -ss 8 -t 0.001 -s 350x240 xxx.jpg

(jacky)

本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net]
本文出处:未知 作者:jacky
顶一下
(32)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容