ffmpeg命令使用

  ffmpeg是一个用于处理音视频的开源库,在音视频开发中,可以使用ffmpeg提供的API对音视频进行处理,也可以使用它提供的工具ffmpeg,ffplay,ffprobe进行音视频文件验证处理。

  本文主要记录ffmpeg命令的使用,方便查阅。

bmp2rgb24(jpg2rgb24)

#!/bin/bash
for name in *bmp; do
     ffmpeg -i "$name" -vcodec rawvideo -pix_fmt rgb24 "${name%.*}.rgb"
done

rgb242jpg(bmp2jpg)

#!/bin/bash
for name in *bmp; do
     ffmpeg -f rawvideo -pixel_format rgb24 -video_size 640x480 -i "$name" "${name%.*}.jpg"
done

yuv2jpg

#!/bin/bash
for name in *jpg; do
    ffmpeg -s 640x480 -pix_fmt yuv420p -i "$name" -pix_fmt rgb24 "${name%.*}.jpg"
done

Extract h264 video stream

ffmpeg -i input.mp4 -vcodec copy -an out.h264

JpgZoom

ffmpeg -i input.jpg -vf scale=320:240 output_320x240.jpg

GetFrame

ffmpeg -i input.avi -r 1 -f image2 image-%05d.jpg

-r 指定抽取的帧率,即从视频中每秒钟抽取图片的数量。1代表每秒抽取一帧。

playYUV

ffplay -i name.yuv -video_size 640x480

pay Y chanle

ffplay -s 640x480 -vf extractplanes='y' 1.yuv

decode h264

ffmpeg -i 720P.264 -s 1280x720 -pix_fmt yuv422p 720P-out.yuv

h264toavi

ffmpeg -f h264 -i source.264 -c:v libx264 -an dest.avi

YUVZoom

ffmpeg -s:v 1280x720 -r 25 -i 720P-out.yuv -vf scale=640:480 -c:v rawvideo -pix_fmt yuv420p out.yuv

Pic2Video

ffmpeg -f image2 -i %07d.jpg -vcodec libx264 -r 30 result.mp4

jpg2yuv

ffmpeg -i test-640x480.jpg -s 640x480 -pix_fmt yuv420p test-yuv420p.yuv

video crop

ffmpeg -ss 0:1:30 -t 0:0:20 -i input.avi -vcodec copy -acodec copy output.avi

-ss 开始时间
-t 持续时间

MP4toH264

ffmpeg -i test.mp4 -codec copy -bsf: h264_mp4toannexb -f h264 test.264

MP3toG711U

ffmpeg -i /home/work/ttsmaker-file-2024-1-24-16-44-21.mp3 -acodec  pcm_mulaw -f mulaw -ac 1 -ar 8000 -vn voice.g711
posted @ 2022-01-16 22:32  刘锐滨  阅读(68)  评论(0)    收藏  举报