NoHttp開源地址:https://github.com/yanzhenjie/NoHttp
NoHttp具體使用文檔已公布,你想知道的全都有,請點我移步!
版權聲明:轉載請注明本文轉自嚴振傑的博客: http://blog.yanzhenjie.com
演示
大家看博客時常常看到以下這樣的圖片,都非常想知道怎么做的吧,好在自己寫博客時也把操作錄下來:
這個圖是我還有一個博客的圖講Android三級聯動和ListView單選多選的,博客和源代碼傳送門,如今呢就一步步教大家怎么來做這個圖。
上方的Gif圖是怎么來的
事實上這個Gif是一個mp4的視頻。僅僅是后來轉成了gif,就這么簡單。這就是本質。可是Android怎么錄mp4呢?
錄制環境
Android4.4以上的系統能夠用shell命令錄視頻,視頻格式是mp4。
局限性
- 分辨率過高的設備不指定低分辨率錄屏會失敗。請嘗試指定低分辨率再錄屏
- 錄制過程中屏幕不能旋轉,假設發生旋轉。錄制過程可能被中斷
- 錄制過程中的聲音不能被錄下來
說究竟就是錄制屏幕畫面啦,僅僅只是格式是mp4的。
錄制命令
視頻格式為mp4,存放到手機sd卡里,默認錄制時間為180s,可用ctrl + c結束錄制。
adb shell screenrecord /sdcard/demo.mp4
指定錄制時間
參數:–time-limit [秒數]。比如指定錄制10S:
adb shell screenrecord --time-limit 10 /sdcard/demo.mp4
指定分辨率
參數:–size [寬*高]。比如指定錄制分辨率為720*1280
:
adb shell screenrecord --size 720*1280 /sdcard/demo.mp4
指定比特率
參數:–bit-rate 比特率,為了發博客方便我們指定比特率為2Mbps
:
adb shell screenrecord --bit-rate 2000000 /sdcard/demo.mp4
Log顯示錄制過程
參數:–verbose,比如:
adb shell screenrecord --verbose /sdcard/demo.mp4
使視頻旋轉90度
參數: –rotate,比如:
adb shell screenrecord --rotate/sdcard/demo.mp4
導出視頻到電腦
這個命令大家應該常常常使用,后邊的文件路徑得是你剛才指定保存路徑,會導出調用命令的文件夾下。比如:
adb pull /sdcard/demo.mp4
查看幫助
參數:–help,比如:
adb shell screenrecord --help
怎么把mp4轉為gif
假設和MP4轉為gif,這里有兩個方法。
用ffmpge
假設你電腦配置了ffmpge就非常easy了,命令行一句話搞定:
ffmpeg -t <視頻時長> -ss -i <視頻文件> demo.gif
比方我們生成一個13S的圖:
ffmpeg -t 13 -ss 00:00:00 -i demo.mp4 demo.gif
用工具轉。這個更好用一點,推薦喔
我已經下載好放百度網盤了,先附上下載地址:http://pan.baidu.com/s/1mgVhuf2
軟件執行截圖:
選擇視頻文件指定開始轉的位置,結束的位置,寬高,幀每秒/幀率等:
選擇圖片質量保存轉化好的gif圖:
最后指定圖片保存位置,就OK了。
NoHttp 源代碼及Demo托管在Github歡迎大家Star:https://github.com/yanzhenjie/NoHttp