Android 屏幕录制GIF脚本
因為一直需要將Android手機上的效果錄制下來,轉成gif,然后上傳到博客上。
原來都需要手動操作好幾次,所以索性的寫了一個腳本來配合使用。
環境準備
- FFmpeg下載
去官網下載地址下載好,解壓就可以了。 - adb下載
需要下載AndroidSDK。因為筆者下載了Android Studio,幫忙下好SDK。所以就不過多描述了。
腳本書寫
關鍵的幾個指令
0.adb截屏
adb shell screencap -p /sdcard/screencap.png--time-limit 參數是限定時間的長短
-
修改視頻的尺寸
-s 參數是修改視頻的尺寸。因為原來截屏的尺寸上傳太大了。所以縮小。
注意:這個尺寸需要根據手機的分辨率來確定。我的手機分辨率是1080x1920。所以這些縮小成360x640 -
縮小gif的大小
-r 指令是修改gif的幀率。這樣能適當的縮小轉出來的gif大小 -
剪切視頻尺寸
-vf crop=width:height:x:y
其中的 crop=1080:1080:0:420 才裁剪參數,具體含義是,其中 width 和 height 表示裁剪后的尺寸,x:y 表示裁剪區域的左上角坐標。比如當前這個示例,我們只需要保留豎向視頻的中間部分,所以 x 不用偏移,故傳入0,而 y 則需要向下偏移:(1920 – 1080) / 2 = 420
完整的腳本
windows
@echo off set /p t=請輸入錄制時間s: rem 開始錄制 adb shell screenrecord --time-limit %t% /sdcard/demo.mp4 adb pull /sdcard/demo.mp4 set h=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2% set dh=%h: =0% rem ffmpeg轉換 F:\ffmpeg-20171128-86cead5-win64-static\ffmpeg-20171128-86cead5-win64-static\bin/ffmpeg -i demo.mp4 -s 360x640 -r 10 target-%dh%.gif rem 刪除緩存的視頻 del demo.mp4 rem 直接打開我們最后的gif start target-%dh%.gif- 另外一個可以剪切尺寸的
- 附帶一個截屏的腳本
最后主要注意編碼問題,請選擇腳本的編碼為GBK。以免出現中文亂碼的問題
保存成.bat文件,這樣雙擊就能運行,然后就可以愉快的得到gif了。
Linux/Mac
#!/bin/bash echo -e '請輸入錄制時間:' read t echo -e '開始錄制' adb shell screenrecord --time-limit $t /sdcard/demo.mp4 adb pull /sdcard/demo.mp4 # # 獲取時間戳 currentTimeStamp=$(date +%s) echo $currentTimeStamp#'ffmpeg轉換' ffmpeg -i demo.mp4 -s 360x640 -r 10 target-$currentTimeStamp.gif #'刪除緩存的視頻' rm -f demo.mp4 # '輸出打開我們最后的gif /r' echo "$(cd `dirname $0`; pwd)"/target-$currentTimeStamp.gif注意需要給腳本對應的權限。
保存成.sh文件,就可以運行,最后輸出的就是文件所在的路徑。
?
作者:deep_sadness
鏈接:https://www.jianshu.com/p/0fafba0fab62
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。
總結
以上是生活随笔為你收集整理的Android 屏幕录制GIF脚本的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android adb无线调试脚本
- 下一篇: Android PC投屏简单尝试- 自定