FFmpegffplay 播放视频命令 ( 播放 | 暂停 | 停止 | 音量控制 | 进度控制 | 音频流 / 视频流 / 字幕流 / 节目切换 )
Posted 韩曙亮
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FFmpegffplay 播放视频命令 ( 播放 | 暂停 | 停止 | 音量控制 | 进度控制 | 音频流 / 视频流 / 字幕流 / 节目切换 )相关的知识,希望对你有一定的参考价值。
FFmpeg 系列文章目录
【FFmpeg】Windows 搭建 FFmpeg 命令行运行环境
【FFmpeg】FFmpeg 相关术语简介 ( 容器 | 媒体流 | 数据帧 | 数据包 | 编解码器 | 复用 | 解复用 )
【FFmpeg】FFmpeg 相关术语简介 二
【FFmpeg】FFmpeg 帮助文档使用
【FFmpeg】使用 FFmpeg 处理音视频格式转换流程 ( 解复用 | 解码 | 帧处理 | 编码 | 复用 )
【FFmpeg】ffmpeg 命令查询一 ( 版本 | 编译配置 | 复用格式 | 编解码器 )
【FFmpeg】ffmpeg 命令查询二 ( 比特流过滤器 | 可用协议 | 过滤器 | 像素格式 | 标准声道布局 | 音频采样格式 | 颜色名称 )
【FFmpeg】ffmpeg 命令查询三 ( 查询 ffmpeg 命令分类支持的参数 )
【FFmpeg】ffplay 播放视频命令 ( 播放 | 暂停 | 停止 | 音量控制 | 进度控制 | 音频流 / 视频流 / 字幕流 / 节目切换 )
一、使用 ffplay 播放视频的基本命令
使用 ffplay 播放视频的基本命令 :
ffplay 视频路径
播放 " D:\\ffmpeg\\yuanshen.mp4 " 视频 , 进入 " D:\\ffmpeg\\ " 目录 , 执行如下命令 :
ffplay yuanshen.mp4
命令行输出 :
D:\\ffmpeg>ffplay yuanshen.mp4
ffplay version n4.4-19-g8d172d9409 Copyright (c) 2003-2021 the FFmpeg developers
built with gcc 10-win32 (GCC) 20210408
configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-shared --disable-static --disable-w32threads --enable-pthreads --enable-iconv --enable-libxml2 --enable-zlib --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-libvorbis --enable-opencl --enable-libvmaf --enable-vulkan --enable-amf --enable-libaom --enable-avisynth --enable-libdav1d --enable-libdavs2 --enable-ffnvcodec --enable-cuda-llvm --enable-libglslang --enable-libgme --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx --enable-libwebp --enable-lv2 --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e --enable-librubberband --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libvidstab --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-ldexeflags= --extra-libs=-lgomp
libavutil 56. 70.100 / 56. 70.100
libavcodec 58.134.100 / 58.134.100
libavformat 58. 76.100 / 58. 76.100
libavdevice 58. 13.100 / 58. 13.100
libavfilter 7.110.100 / 7.110.100
libswscale 5. 9.100 / 5. 9.100
libswresample 3. 9.100 / 3. 9.100
libpostproc 55. 9.100 / 55. 9.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'yuanshen.mp4': 0B f=0/0
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf58.29.100
Duration: 00:06:13.10, start: 0.000000, bitrate: 2623 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 2489 kb/s, 25 fps, 25 tbr, 25k tbn, 50 tbc (default)
Metadata:
handler_name : VideoHandler
vendor_id : [0][0][0][0]
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : SoundHandler
vendor_id : [0][0][0][0]
13.74 A-V: 0.009 fd= 4 aq= 22KB vq= 354KB sq= 0B f=0/0
D:\\ffmpeg>
执行过程 :
二、ffplay 播放过程中的控制命令
播放控制 :
- 逐帧播放 : S ;
- 向后 / 向前拖动 10 秒 : Left / Right 箭头按钮 ;
- 向后 / 向前拖动 1 分钟 : Down / Up 箭头按钮 ;
- 暂停播放 : P , 空格 ; 按下 P 或 空格键 , 可以暂停播放 ;
- 停止播放 : Q , Esc ; 开始播放后 , 按下 Q 或 Esc 按键 , 可以退出播放 ;
全屏切换 : F 按键可以切换全屏 ; 鼠标左键双击 也可以进行全屏切换 ;
音量控制 :
- 静音 : M 键可切换 静音 / 非静音 状态 ;
- 减少音量 : 9 或 / 按键 , 减少音量 ;
- 增加音量 : 0 或 * 按键 , 增加音量 ;
循环切换 : 针对有多个音频流以及视频流 , 如电视节目 TS 流 , 多个电视台信号在一个流中 , 可以通过切换 音频流 / 视频流 / 节目 等选择不同的电视台信号进行观看 ;
- 循环切换音频流 : A ; ( Audio )
- 循环切换视频流 : V ; ( Vedio )
- 循环切换字幕流 : T ;
- 循环切换节目 : C ;
- 循环切换过滤器或显示模式 : W ;
三、测试 TS 流循环切换 音频流/视频流/字幕流/节目
TS 流文件 cctv.ts , 其包含的流信息如下 , 该文件中有 7 7 7 个视频流 , 7 7 7 个音频流 ;
使用
ffplay cctv.ts
命令播放包含多个视频流 / 音频流 ;
如果声音太大可以使用 -volume
选项控制声音 :
ffplay -volume 3 cctv.ts
播放开始后 , 按下 A 可以切换音频流 , 按下 V 可以切换视频流 , 按下 T 可以切换字幕流 ,
按下 C 可以切换完整的节目 , 即同时切换 音频流 , 视频流 , 字幕流 ;
以上是关于FFmpegffplay 播放视频命令 ( 播放 | 暂停 | 停止 | 音量控制 | 进度控制 | 音频流 / 视频流 / 字幕流 / 节目切换 )的主要内容,如果未能解决你的问题,请参考以下文章
#yyds干货盘点#Linux下播放器开发-Mplayer命令行使用介绍
ffmpeg命令将不同类型和分辨率的视频连接成1个视频,可以在android中播放[重复]