芯片开放社区
直播中

张霞

7年用户 1048经验值
私信 关注
[技术讨论]

【平头哥Sipeed LicheeRV 86 Panel测评】视频播放测试

本篇介绍在Sipeed LicheeRV 86 Panel中播放视频。

tina镜像中内置了FFmpeg软件包,可以使用FFmpeg进行视频播放。

FFmpeg简介

FFmpeg(Fast Forward Mpeg)是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。


FFmpeg命令行使用格式

FFmpeg 的命令行参数可以分成五个部:

$ ffmpeg {1} {2} -i {3} {4} {5}
  • 全局参数
  • 输入文件参数
  • 输入文件
  • 输出文件参数
  • 输出文件

例如本次需要进行视频播放的命令为:

ffmpeg -i /mnt/exUDISK/badapple_480360_xvid.mp4 -pix_fmt bgra -f fbdev /dev/fb0 -f alsa hw:0,0
FFmpeg常用的命令行参数有:

-c:指定编码器
-c copy:直接复制,不经过重新编码(这样比较快)
-c:v:指定视频编码器
-c:a:指定音频编码器
-i:指定输入文件
-an:去除音频流
-vn: 去除视频流
-preset:指定输出的视频质量,会影响文件的生成速度,有以下几个可用的值 ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow。
-y:不经过确认,输出时直接覆盖同名文件。视频播放测试

播放例程所用的BadApple测试视频

播放U盘里的BadApple视频::

ffmpeg -i /mnt/exUDISK/badapple_480360_xvid.mp4 -pix_fmt bgra -f fbdev /dev/fb0 -f alsa hw:0,0

使用如下指令,可以使画面居中,上下可以留黑边,但是视频播放会稍微变卡:

ffmpeg -i /mnt/exUDISK/badapple_480360_xvid.mp4 -pix_fmt bgra -vf pad='w=480:h=480:x=(ow-iw)/2:y=(oh-ih)/2' -f fbdev /dev/fb0 -f alsa hw:0,0
播放自制的视频

自己制作一段视频,以xvid格式编码视频,分辨率调整到480x480,比如我将“打,打个大西瓜”这个短片使用视频编辑软件改了一下视频的尺寸,播放指令如下:

ffmpeg -i /mnt/exUDISK/dgdxg_xvid.mp4 -pix_fmt bgra -f fbdev /dev/fb0 -f alsa hw:0,0
串口输出如下:


实际的播放效果还是比较流畅的:



播放电视直播

找一个电视直播的视频源,板子连网之后可以查看电视直播:

ffmpeg -i http://183.207.249.6/PLTV/3/224/3221225534/index.m3u8 -pix_fmt bgra -vf scale=480:480 -f fbdev /dev/fb0 -f alsa hw:0,0
指令中的“-vf scale=480:480”是用来将x视频尺寸调整至480x480,播放画面如下,虽然能播,但是画面非常的卡。


总结

本篇测试了Sipeed LicheeRV 86 Panel开发板使用FFmpeg进行视频播放的能力,对于播放480x480以下的视频,画面和声音都比较流程,如果使用了FFmpeg的尺寸修改功能,或是从网络直播源播放视频,播放就会不同程度的变卡。


文章转载自:平头哥芯片开放社区 作者:码农爱学习

更多回帖

发帖
×
20
完善资料,
赚取积分