js 实现浏览器端进行视频剪辑合并裁剪等功能
以前视频转换我们需要下载软件进行转换,有些还是收费的,或者在服务器端进行ffmpeg压缩转换,那么能不能再浏览器中直接进行视频编辑转换压缩呢,html5给了我们一个答案,能,现在ffmpeg推出了js版本ffmpeg.js ,可以在线进行视频压缩编辑处理,是不是很强大呢
今天我们来演示一下如何通过ffmpeg.js进行浏览器端视频编辑压缩处理,今天我们需要用到html5中的work特性来进行后台压缩
可以点击右上角在线编辑运行按钮预览效果,注意,由于ffmpeg.js很大,有22M,所以需要加载一段时间
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>videoconverter.js - 浏览器视频转换</title> <style type="text/css"> #terminal { background: #fff; color: #000; font-family: "Lucida Console", "Lucida Sans Typewriter", Monaco, "Bitstream Vera Sans Mono", monospace; font-weight: lighter; border: solid 1px; padding: 10px; margin-top: 35px; } .terminal-top-bar { background: rgb(233, 233, 233); height: 14px; font-size: 12px; line-height: 14px; margin-top: -30px; margin-left: -11px; margin-right: -11px; padding: 3px; text-align: center; color: rgb(92, 92, 92); border: solid 1px; border-radius: 2px 2px 0 0; } .terminal-header { padding-top: 15px; } #input { width: 80%; padding: 4px; } #run { width: 15% } #output { white-space: pre-wrap; word-break: break-all; } #output.closed { max-height: 200px; overflow-y: scroll; } #files { text-align: center; } #files img { max-width: 80%; } .sample-commands { text-align: center; } </style> </head> <body> <div class="container-fluid"> <div class='content'> <div class='inner-content'> <div class="header clearfix"> <div class="pull-left"> <H1>在线js视频格式转换截图翻转编辑ffmpeg等操作 </H1> </div> </div> <div class="clearfix"> <p> 待转换的视频 </p> <video src="/bfwrepo/video/bigbuckbunny.webm" width="100%" autoplay="autoplay" controls="controls"></video> <p> 待处理的图片 </p> <img src="/bfwrepo/image/bigbuckbunny.jpg" width="100%" /> <!--<p>--> <!-- 选择视频<input type="file" accept="video/*" id="videoselect" />--> <!--</p>--> <div class="sample-commands"> <button class="plain-button sample" data-command="-help">帮助</button> <button class="plain-button sample" data-command="-codecs">所有编码</button> <button class="plain-button sample" data-command="-i input.jpeg -vf vflip output.jpeg"> 垂直翻转图片</button> <button class="plain-button sample" data-command="-i input.jpeg -vf hflip output.jpeg"> 水平翻转图片</button> <button class="plain-button sample" data-command="-i input.webm -vf showinfo -strict -2 output.mp4">在线视频转mp4格式</button> <button class="plain-button sample" data-command="-t 5 -i input.webm -vf showinfo -strict -2 output.gif">在线视频转gif格式</button> <button class="plain-button sample" data-command="-i input.webm -s 100x100 -f image2 -vf fps=fps=1,showinfo -an out%d.jpeg">视频截图</button> <button class="plain-button sample" data-command="-i input.webm -vf"showinfo,drawbox=enable='between(n,0,60)' : x=10 : y=10 : w=50 : h=50 : color=red,drawbox=enable='gte(t,1)' : x=100 : y=100 : w=200 : h=200 : color=green" -strict -2 output.mp4">在视频上画个框</button> <button class="plain-button sample" data-command="-t 3 -i input.webm -vf showinfo -strict -2 -c:v libx264 output.mp4">视频用H.264编码转换</button> <button class="plain-button sample" data-command="-t 3 -i input.webm -vf showinfo -strict -2 -c:v libvpx-vp9 output.webm">视频用VP9编码转换</button> </div> <div id="terminal"> <div class="terminal-top-bar"> ...
点击查看剩余70%
网友评论0