0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【树莓派】播放音频和视频

上海晶珩电子科技有限公司 来源:上海晶珩电子科技有限公 作者:上海晶珩电子科技 2023-11-03 15:12 次阅读

WARNING

以下文档涉及Raspberry Pi OS Buster和早期版本。OMXPlayer 已在最新操作系统版本中弃用。如果您正在使用Bullseye,VLC现在是推荐的替代方案。

在Raspberry Pi上播放音频视频的最简单方法是使用已安装的OMXPlayer应用程序。

这是硬件加速的,可以播放许多流行的音频和视频文件格式。OMXPlayer使用OpenMAX(omx)硬件加速接口(API),这是Raspberry Pi官方支持的媒体API。OMXPlayer由Kodi项目的Edgar Hucek开发。

OMXPlayer应用程序

最简单的命令行是 omxplayer . 媒体文件可以是音频和/

或视频。对于以下示例,我们使用了包含在标准Raspberry Pi操作系统中的 H264 视频文件。

omxplayer /opt/vc/src/hello_pi/hello_video/test.h264

默认情况下,音频将发送到模拟端口。如果您使用的是带有扬声器的配备HDMI的显示设备,则需要告诉omxplayer通过HDMI链路发送音频信号

omxplayer --adev hdmi /opt/vc/src/hello_pi/hello_video/test.h264

显示视频时,整个显示器将用作输出。您可以使用窗口选项指定希望视频位于显示的哪个部分。

omxplayer --win 0,0,640,480 /opt/vc/src/hello_pi/hello_video/test.h264

您还可以指定要显示视频的哪个部分:这称为裁剪窗口。视频的这一部分将放大以匹配显示,除非您还使用窗口选项。

omxplayer --crop 100,100,300,300 /opt/vc/src/hello_pi/hello_video/test.h264

如果您使用的是 Raspberry Pi触摸屏, 并且想要将其用于视频输出,请使用显示选项指定要使用的显示器。使用n为5是HDMI ,n为4是触摸屏。使用Raspberry Pi4,您有两种HDMI输出选项。对于 n 为2是HDMI0,对于 n 为7是HDMI1。

omxplayer --display n /opt/vc/src/hello_pi/hello_video/test.h264

如何播放音频

要播放.MP3文件,请使用以下cd命令导航到.mp3终端中文件的位置,然后键入以下命令:

omxplayer example.mp3

这将通过显示器的内置扬声器或通过耳机插孔连接的耳机播放音频文件 example.mp3。

如果您需要示例文件,可以使用以下命令从此处下载一个:

wget https://raw.githubusercontent.com/raspberrypilearning/burping-jelly-baby/master/data/la.mp3 -O example.mp3 --no-check-certificate

如果您听不到任何声音,请确保您的耳机或扬声器已正确连接。请注意,omxplayer 不使用 ALSA,因此需要通过`raspi-config` 或 amixer 忽略音频配置。

如果 omxplayer 自动检测正确的音频输出设备失败,您可以使用以下方法强制通过 HDMI 输出:

omxplayer -o hdmi example.mp3

或者,您可以使用以下命令通过耳机插孔强制输出:

omxplayer -o local example.mp3

您甚至可以通过以下方式通过耳机插孔和HDMI强制输出:

omxplayer -o both example.mp3

如何播放视频

要播放视频,请使用cd导航到终端中视频文件的位置,然后键入以下命令:

omxplayer example.mp4

这将全屏播放example.mp4。点击 Ctrl + C 退出

在Raspberry Pi 4 上,已删除对 MPEG2 和VC-1 编解码器的硬件支持,因此我们建议使用 VLC 应用程序,该应用程序在软件中支持这些格式。此外,VLC 还支持 H264 和新的 HEVC 编解码器。

示例视频

您可在Raspberry Pi上找到动画电影《Big Buck Bunny》的视频样本。要播放它,请在终端窗口中输入以下命令:

omxplayer /opt/vc/src/hello_pi/hello_video/test.h264

在Raspberry Pi 4 上,对 H264 文件使用以下命令:

omxplayer /opt/vc/src/hello_pi/hello_video/test.h264

或用于 H264、VC1 或 MPEG2

vlc /opt/vc/src/hello_pi/hello_video/test.h264

使用VLC时,您可以通过封装原始H264流(例如来自Raspberry Pi相机模块的流)来提高回放性能。使用`ffmpeg` 很容易做到这一点。播放也得到改善,如果VLC运行全屏;从用户界面中选择fullscreen,或者可以在 vlc 命令行中添加--fullscreen 项。此示例命令转换 video.h264 为容器化的 video.mp4 以 30 fps

ffmpeg -r 30 -i video.h264 -c:v copy video.mp4

播放期间的选项

播放期间有许多选项可用,通过按适当的键来操作。并非所有选项在所有文件上都可用。可以使用omxplayer --keys显示键绑定列表:


    1           decrease speed
    2           increase speed
    <           rewind
    >           fast forward
    z           show info
    j           previous audio stream
    k           next audio stream
    i           previous chapter
    o           next chapter
    n           previous subtitle stream
    m           next subtitle stream
    s           toggle subtitles
    w           show subtitles
    x           hide subtitles
    d           decrease subtitle delay (- 250 ms)
    f           increase subtitle delay (+ 250 ms)
    q           exit omxplayer
    p / space   pause/resume
    -           decrease volume
    + / =       increase volume
    left arrow  seek -30 seconds
    right arrow seek +30 seconds
    down arrow  seek -600 seconds
    up arrow    seek +600 seconds

后台播放

如果在没有tty(用户输入)的情况下在后台运行omxplayer将立即关闭,因此要成功运行,您需要使用--no-keys选项告诉omxplayer不需要任何用户输入。

omxplayer --no-keys example.mp3 &

在命令末尾添加&在后台运行。然后,可以使用该 jobs 命令检查此后台作业的状态。默认情况下,工作将在`omxplayer`播放完成后完成,但如有需要,您可以随时使用 kill 命令停止它。


$ jobs
[1]-  Running             omxplayer --no-keys example.mp3 &
$ kill %1
$
[1]-  Terminated          omxplayer --no-keys example.mp3 &

审核编辑 黄宇
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Raspberry Pi
    +关注

    关注

    1

    文章

    557

    浏览量

    22162
  • 树莓派
    +关注

    关注

    116

    文章

    1698

    浏览量

    105520
收藏 人收藏

    评论

    相关推荐

    【AI技术支持】ESP32-C3-Lyra播放音频无法控制音量及异声问题处理

    【AI技术支持】ESP32-C3-Lyra播放音频无法控制音量及异声问题处理
    的头像 发表于 11-22 01:01 56次阅读
    【AI技术支持】ESP32-C3-Lyra<b class='flag-5'>播放音频</b>无法控制音量及异声问题处理

    TLV320AIC3100播放音频的时候,拔插耳机然后在插入就无法播放了,为什么?

    TLV320AIC3100播放音频的时候. 拔插耳机.然后在插入就无法播放....有几个DAC寄存器被关闭..这个是什么问题? 是不是DAC哪个寄存器设置错误.... 如果停止播放.拔插就没有此问题
    发表于 11-08 07:23

    树莓gpio有什么用,树莓gpio接口及编程方法

    一、树莓GPIO的用途 树莓(Raspberry Pi)是一款小巧、功能强大的单板计算机,广泛应用于编程教育、物联网项目、家庭媒体中心等领域。GPIO(General Purpos
    的头像 发表于 10-22 18:09 464次阅读

    什么是树莓树莓是什么架构的

    什么是树莓 树莓(Raspberry Pi,简写为RPi,别名为RasPi/RPI)是由英国“Raspberry Pi 慈善基金会”开发的一款为学习计算机编程教育而设计的微型电脑。
    的头像 发表于 10-22 17:33 487次阅读

    tas5805m连续通过tinyplay播放音频有概率出现播放不了的情况,为什么?

    通过pp3软件得到配置文件,并通过I2c写入tas5805m。连续通过tinyplay播放音频有概率出现播放不了的情况,此时时钟都有信号,参考电路图
    发表于 10-12 07:15

    树莓的功能用途是什么

    、科研、工业控制、物联网、多媒体播放、家庭自动化等领域。 树莓(Raspberry Pi)是一种小型、低成本的单板计算机,由英国的Raspberry Pi基金会开发,其功能和用途非常广泛。以下是
    的头像 发表于 08-30 18:01 2230次阅读

    linux开发板与树莓的区别

    操作系统的微型计算机,主要用于教育、编程、媒体播放等领域。 硬件配置 Linux开发板:Linux开发板的硬件配置因厂商和型号而异,通常包括处理器、内存、存储、网络接口等。 树莓树莓
    的头像 发表于 08-30 15:34 750次阅读

    如何使用音频接口播放音频文件

    ZDP1440是一款基于开源GUI引擎的图像显示专用驱动芯片,内部集成16MB显示内存、2D图形加速器、音频解码器等丰富多媒体功能,本文将介绍如何使用音频接口播放音频文件。
    的头像 发表于 08-06 16:12 543次阅读
    如何使用<b class='flag-5'>音频</b>接口<b class='flag-5'>播放音频</b>文件

    请问如何使用PSoC4播放音频文件?

    如何使用 PSoC4 播放音频文件
    发表于 07-02 07:19

    esp-adf大版本升级到最新,播放音频的log怎么关闭呢?

    esp-adf大版本升级到最新,播放音频的log怎么关闭 4976) ADF_BIT_STREAM: length = 960, bytenum = 0, bread = 960 D (4977
    发表于 06-28 07:41

    如何通过BLE播放音频

    现在是我有一个android app,有一块esp32板子上面有喇叭,板子刷了a2dp_sink例子的固件。如果用bluetooth 和板子pair之后,可以播放音乐。 现在要求不用bluetooth,而是用ble连接,然后播放音乐,请问可以实现吗?求指点迷津,谢谢。
    发表于 06-26 06:36

    树莓5,Raspberry Pi 5 评测

    的B+改进设计,但仔细看!“极为先进”的3.5毫米的音视频插孔已经消失了,所以本代树莓没有模拟视频/音频接口。话虽如此,自
    发表于 06-19 14:51

    在全志H616核桃开发板上进行音频配置的方法详解

    /Noise.wav 音频口接上耳机或者扬声器,可以听到播放出声音。 桌面系统音乐播放 可以直接使用带桌面系统预装的VLC媒体播放播放音频
    发表于 05-29 09:34

    【米尔-瑞米兼容树莓扩展模块-试用体验】用视频来了解这块生态板_米尔-瑞米兼容树莓扩展模块

    今天为大家展示一下初始开发板_米尔-瑞米兼容树莓扩展模块, 米尔-瑞米兼容树莓扩展模块介
    发表于 04-29 11:51

    【米尔-瑞米兼容树莓扩展模块-试用体验】初始开发板_米尔-瑞米兼容树莓扩展模块

    收到米尔-瑞米兼容树莓扩展模块几天了,今天抽时间给大家介绍一下这块生态板,让大家有对这块米尔-瑞米兼容树莓
    发表于 04-29 11:42