当前位置: 首页 > news >正文

宁夏网络推广公司兰州优化官网

宁夏网络推广公司,兰州优化官网,招聘网站开发学徒,五种常见的软件架构文章目录目的QMediaPlayerGStreamerwhat is GStreamer体系框架优势omxplayerwhat is omxplayercommand Linekey bindings运行过程中错误ALSA目的 实现在树莓派下外接扬声器, 播放某段音频, 进行回音测试。 QMediaPlayer 首先我的安装是5.11版本。 优先…

文章目录

    • 目的
    • QMediaPlayer
    • GStreamer
      • what is GStreamer
      • 体系框架
      • 优势
    • omxplayer
      • what is omxplayer
      • command Line
      • key bindings
      • 运行过程中错误
      • ALSA

目的

实现在树莓派下外接扬声器, 播放某段音频, 进行回音测试。

QMediaPlayer

首先我的安装是5.11版本。
优先想到的是通过Qt QMutilmedia 这个模块, 结果再通过QMediaPlayer 播放指定路径下文件。

结果不太理想, 报错 “defaultServiceProvider::requestService(): no service found for - “org.qt-project.qt.mediaplayer””

然后采取这篇博客defaultServiceProvider::requestService()建议

了解的思路是安装 gstreamer1.0, 然后ffmpeg, 单独下载qt源码进行安装编译 进行对应配置说明设置, 但由于本人比较懒, 这个就取消了,但最终也没怎么解决, 后续再看看验证此方法, 或者读者有更好方法, 或者已经验证此方法可行, 也请麻烦告知一下, 互相学习。

  1. 安装准备
 gstreamer1.0ffmpegqt5

building-qt-515-lts-raspberry-pi-raspberry-pi-os

这篇博客说到 gstreamer multimedia framework support, 如下的在树莓派中都建议安装下。
在这里插入图片描述

  1. import module in pro
QT += multimedia multimediawidgets

Qt | 播放音频文件 QMediaplayer

注意事项:
当定义的QMediaPlayer对象正在播放一个音频文件时,再次调用setMedia()play(),会停止正在播放的音频文件,播放新设置的音频文件。
如果想同时播放两个音频文件,需要创建两个QMediaPlayer对象,同时进行播放。
重复new()delete()会造成崩溃。

GStreamer

what is GStreamer

what is gstreamer

适用于Android,iOS,macOS和Windows, linux 多平台。GStreamer是一个用于构建图形的库 媒体处理组件。它支持的应用程序范围从简单 Ogg/Vorbis 播放,音频/视频流到复杂的音频(混音)和视频 (非线性编辑)处理。应用可以利用编解码器和滤波器技术的进步 透明。开发人员可以通过编写 具有干净通用界面的简单插件GStreamer是一个基于管道的多媒体框架,它将各种各样的媒体处理系统连接在一起,以完成复杂的工作流程。
例如,可以使用GStreamer构建一个系统,该系统读取一种格式的文件,处理它们,并以另一种格式导出它们。格式和过程可以以即插即用的方式进行更改。GStreamer是一个开源的多媒体框架,主要用于创建媒体应用程序(流媒体、媒体回放、非线性编辑等)。GStreamer框架的设计目的是简化编写处理音频或视频或两者兼有的应用程序。它使用提供各种编解码器和其他功能的插件。

体系框架

在这里插入图片描述

优势

处理多媒体不是一件容易的事。因此,选择合适的框架来处理音频和视频流成为确保项目成功的关键。面对这一挑战的开发人员在选择正确的多媒体框架之前应该考虑以下因素:编码复杂性(架构)、跨平台支持、多媒体技术覆盖范围(编解码器、过滤器等)、文档和可用支持。

GStreamer在上述标准中表现出色:它的智能插件架构和全面的核心库使您的应用程序开发变得容易,并且它为您的许多需求提供了经过良好测试的元素。它可以在所有主要的操作系统上运行。Linux, Android, Windows, Max OS X, iOS),并运行在所有主要硬件架构上,包括x86, ARM, MIPS, SPARC。它有一个广泛的多媒体插件列表(编码器,解码器,内容过滤器……),而且它允许轻松集成第三方插件。最后,GStreamer为开发人员和大型社区提供了广泛且结构良好的文档,他们的贡献确保了该框架的持续改进。

omxplayer

what is omxplayer

omxplayer

OMXPlayer是你可以在树莓派上使用的最好的视频播放器之一,这要归功于它针对其硬件进行了优化。Kodi团队最初开发这款软件是为了在Pi的硬件上运行视频。由于是专门为硬件设计的,所以它已经进行了大量优化。更好的是,您可以从命令行使用OMXPlayer。这让你可以使用像Raspberry Pi OS Lite这样的轻量级操作系统,同时仍然可以运行视频。

command Line

Usage: omxplayer [OPTIONS] [FILE]
Options :-h / --help                    print this help-n / --aidx  index             audio stream index    : e.g. 1-o / --adev  device            audio out device      : e.g. hdmi/local-i / --info                    dump stream format and exit-s / --stats                   pts and buffer stats-p / --passthrough             audio passthrough-d / --deinterlace             deinterlacing-w / --hw                      hw audio decoding-3 / --3d mode                 switch tv into 3d mode (e.g. SBS/TB)-y / --hdmiclocksync           adjust display refresh rate to match video (default)-z / --nohdmiclocksync         do not adjust display refresh rate to match video-t / --sid index               show subtitle with index-r / --refresh                 adjust framerate/resolution to video-g / --genlog                  generate log file-l / --pos n                   start position (in seconds)--boost-on-downmix        boost volume when downmixing--vol n                   Set initial volume in millibels (default 0)--subtitles path          external subtitles in UTF-8 srt format--font path               subtitle font(default: /usr/share/fonts/truetype/freefont/FreeSans.ttf)--font-size size          font size as thousandths of screen height(default: 55)--align left/center       subtitle alignment (default: left)--lines n                 number of lines to accommodate in the subtitle buffer(default: 3)--win "x1 y1 x2 y2"       Set position of video window--audio_fifo  n           Size of audio output fifo in seconds--video_fifo  n           Size of video output fifo in MB--audio_queue n           Size of audio input queue in MB--video_queue n           Size of video input queue in MB

key bindings

z			Show Info
1			Decrease Speed
2			Increase Speed
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
d			Subtitle delay -250 ms
f			Subtitle delay +250 ms
q			Exit OMXPlayer
Space or p	Pause/Resume
-			Decrease Volume
+			Increase Volume
Left Arrow	Seek -30 s
Right Arrow	Seek +30 s
Down Arrow	Seek -600 s
Up Arrow	Seek +600 s

eg:

sudo omxplayer -p -o hdmi test_spk.WAV

运行过程中错误

当时场景我是接口一个扬声器, 然后播放时候通过该扬声器播放声音。
出现了如下问题:

  1. 播放结果提示 have a nice day!
  2. 排除静音下情形下,播放没有声音出来

首先安装omxplayer, 上文到的gstreamer 中一些dev, alsa

sudo apt-get install omxplayer

在这里插入图片描述
然后再对应的ui操作界面 选择对应输入, 我那里选择AV Jack;

cmd 输入 alsamixer, 了解对应声卡

alsamixer

在这里插入图片描述
在如上图中按下F6, 选择对应的sound car, 由于Raspberry Pi最多具有三种音频输出方式:Master(PulseAudio card),HDMI (HDMI Card) ,以及耳机插孔(Headphone Card)。可以随时切换。
如果您的HDMI显示器或电视具有内置扬声器,则可以通过HDMI来播放音频,同时您可以将其切换到耳机或插入耳机插孔的其他扬声器。如果您的显示器有扬声器,则默认情况下会通过HDMI输出声音。如果不是,则通过耳机插孔输出。这可能不是期望的输出设置,或者自动检测不准确,在这种情况下,您可以手动切换输出。

而我是想通过过耳机插孔输出, 所以会选择Headphone.

树莓派输出声音

选择Headphone 设置音量,

amixer set -c 0 Headphone 50

还有些说设置, 具体也不知道好不好使 gpu_mem

In the file 
/boot/config.txt
add the line 
gpu_mem=128

ALSA

[ALSA]是Linux声音堆栈的最低级别。alsa-utils包已经安装在我正在使用的debian wheezy发行版(2012-12-16-wheezy-raspbian.zip)上。它提供了一些有用的命令:amixer, alsamixer, alsactl, aplay和speaker-test。

ALSA(高级Linux声音体系结构)是主要的Linux声音系统。脉冲音频和Jack在ALSA上进行操作。
Alsamixer是一个基于终端的混音器控制。它是系统自带的,用于故障排除或检查声音运行。

Sound configuration on Raspberry Pi with ALSA

amixer

amixer__

amixer allows command-line control of the mixer for the ALSA soundcard driver. amixer supports multiple soundcards.

alsamixer是Linux音频架构ALSA中的Alsa工具的其中一个,用于配置音频的各个参数。
alsamixer是基于文本下的图形界面的,可以通过键盘的上下键,左右键等,很方便地设置需要的音量,开关某个switch(开关)等等操作。
amixer,是alsamixer的文本模式,即命令行模式,需要用amixer命令的形式去配置你的声卡的各个选项。

PulseAudio 是 POSIX 操作系统的声音服务器系统,这意味着它是您的声音应用程序的代理。它是所有相关现代 Linux 发行版不可或缺的一部分,被多个供应商用于各种移动设备。它在应用程序和硬件之间传递声音数据时对声音数据执行高级操作。诸如将音频传输到另一台机器、更改采样格式或通道数或将多个声音混合到一个输入/输出中等操作都可以使用 PulseAudio 轻松实现

http://www.yayakq.cn/news/857161/

相关文章:

  • 深圳住房和城乡建设部网站wordpress里放代码
  • 大型网站建设优化企业湖南郴州最好的县城
  • 邵阳做网站的公司本地唐山网站建设
  • 网站建设不一定当地跨境电商网站开发技术
  • 做网站原型的软件WordPress模板博客主题
  • 网站找哪家做wordpress获取文章别名
  • 中文域名指向同一个网站龙岗建设网站制作
  • 柳州网站建设公司购物网页模板
  • 专业电商网站建设价格徐州公司做网站
  • 企业做网站的注意什么淮北市建筑
  • 耐克网站建设的历程wordpress 顶部高度
  • 陕西省住房与建设厅网站有了源码怎么做网站
  • 外贸商城网站制作公司做新媒体每天必看的网站
  • 陕西建站公司网站推广运营招聘
  • c 可以做网站中国建设银行网站登录不了
  • 设计一套网站多少钱html php网站开发
  • 北京网站推广机构网站与经营网站
  • 有做教育行业的招聘网站吗wordpress占用服务器内存
  • 专业的网站制作团队wordpress好的播放器
  • 网站怎么换域名陕西网站建设价位多少
  • 博罗网站建设公司专业做视频的网站有哪些
  • 婚纱网站设计代码htmlwordpress自定义文章
  • 阜阳做网站的企业营销型网站建设费用
  • 建站系统加盟聊城网站制作
  • 单词优化和整站优化部门网站建设情况汇报
  • 桥头仿做网站公司名字大全20000个四个字
  • 用div做网站中间部分东莞广告公司电话
  • 外贸网站设计案例好玩的传奇
  • 有服务器还需要买网站空间吗接私活app有哪些平台
  • 网站制作中的展开怎么做重庆市建设工程信息网官网打不开