Created
April 30, 2020 18:01
-
-
Save mirland/18411a82ba63a334f7b4e41e804b2e67 to your computer and use it in GitHub Desktop.
Record a video from an android device
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
video2gif() { | |
ffmpeg -y -i "${1}" -vf fps=${3:-10},scale=${2:-320}:-1:flags=lanczos,palettegen "${1}.png" | |
ffmpeg -i "${1}" -i "${1}.png" -filter_complex "fps=${3:-10},scale=${2:-320}:-1:flags=lanczos[x];[x][1:v]paletteuse" "${1}".gif | |
rm "${1}.png" | |
} | |
record_gif() { | |
if [ -z "$1" ]; then | |
VIDEO_NAME=$(date +%F_%H-%M-%S) | |
else | |
VIDEO_NAME="$1" | |
fi | |
adb shell rm /sdcard/record_gif.mp4 2> /dev/null | |
adb shell screenrecord /sdcard/record_gif.mp4 & | |
pid=$! | |
echo "Start Recording $VIDEO_NAME.mp4 process $pid" | |
read -rsn1 -p "Press any key to finish the video" | |
echo -e "\nStoping video recording" | |
kill -2 $pid &> /dev/null | |
sleep 1 | |
# Change permissions if needed | |
adb pull /sdcard/record_gif.mp4 > /dev/null | |
cp record_gif.mp4 "$VIDEO_NAME.mp4" | |
rm -f record_gif.mp4 | |
adb shell rm /sdcard/record_gif.mp4 | |
video2gif "$VIDEO_NAME.mp4" 270 15 2> /dev/null | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment