
GStreamer
文章平均质量分 82
倾我一生来读
一颗螺丝钉
展开
-
GStreamer basesink中的时钟同步
播放复杂媒体时,每个audio和video sample必须在特定时间按特定顺序播放。原创 2023-09-10 21:57:24 · 1066 阅读 · 0 评论 -
RIoTBoard开发板系列笔记(十二)—— gstreamer + vpu实现视频硬件解码播放
i.mx6 solo芯片中包含一个VPU (video processing unit),可以进行视频硬件编解码加速,之前文章简单的记录了使用VPU解码的过程,没有render也没有播放控制。一般音视频开发需要一个框架来实现demux 、decoder、render以及基本的播放控制,linux平台首选的多媒体框架就是GStreamer。原创 2022-10-29 14:42:47 · 2724 阅读 · 0 评论 -
ubuntu GStreamer + QT多媒体播放器开发(四)
本篇博客在上一篇ubuntu GStreamer + QT多媒体播放器开发(三)的基础上主要修改新增以下几点:(1)播放过程中实时更新进度条以及播放时间。(2)拖动进度条实现seek功能。(3)QT UI替换为正点原子的videopalyer 样式布局。播放过程中实时更新进度条以及播放时间需要新增获取档案duration 和position 的接口,在mmplayer lib中新增两个接口。...原创 2022-06-11 18:40:36 · 2524 阅读 · 9 评论 -
ubuntu GStreamer + QT多媒体播放器开发(三)
本篇博客在上一篇ubuntu GStreamer + QT多媒体播放器开发(二)的基础上主要修改新增以下几点:(1)log 分为trace、info、debug、warn、error五个级别打印;(2)mmplayer lib新增MMPlayerPause 接口。(3)QT(UI)层更改为通过control thread 控制播放、暂停、停止等功能,通过command queue实现异步响应UI 点击事件;(4)QT 窗口退出时增加资源释放的流程。(5)优化QT project cmake....原创 2022-06-04 17:23:20 · 1337 阅读 · 0 评论 -
ubuntu GStreamer + QT多媒体播放器开发(二)
本篇博客在上一篇ubuntu GStreamer + QT多媒体播放器开发(一)的基础上主要修改新增以下几点:(1)使用gstreamer播放控制的部分封装成mmpalyer lib,对外的接口以及一些结构体和枚举定义单独抽离到mediaplayer.h头文件中;(2)使用QT调用mmpalyer lib提供的接口实现播放,视频在QT窗口中进行渲染;(3)增加playbin3 的element-added signal 监听,方便查看playbin3在自动创建pipeline时增加了那些element原创 2022-05-31 22:26:57 · 2526 阅读 · 0 评论 -
ubuntu GStreamer + QT多媒体播放器开发(一)
之前用gstreamer和QT开发了一个粗糙的MP4播放器(GStreamer开发简单MP4播放器(二)),只能实现mp4格式的文件播放,而且bug比较多,代码结构比较乱,没有继续开发下去。最近事不是很多,因此打算抽空重新用gstreamer写一个player,记录一下折腾过程。1 实现思路本次主要实现两个功能:(1)封装player start 和stop接口,main函数中调用这两个接口实现播放和停止。(2)播放任务放在一个单独的线程中执行。首先定义一个结构体,存放hanle(也称player原创 2022-05-29 22:32:11 · 2282 阅读 · 4 评论 -
RIoTBoard开发板系列笔记(三)—— 移植Gstreamer
交叉编译原创 2021-12-13 22:24:59 · 1974 阅读 · 3 评论 -
arm-linux-cc 4.4.3 交叉编译gstreamer1.18
1 下载glib失败gstreamer 依赖glib,所以编译的时候检测到toolchain中没有安装glib的话会自动从git仓库拉取代码,但是国内访问github或者gitlib比较慢,会出现time out的问题。fatal: unable to access 'https://gitlab.gnome.org/GNOME/glib.git/': Failed to connect to gitlab.gnome.org port 443: Connection timed outsubproj原创 2021-11-07 19:41:17 · 4970 阅读 · 1 评论 -
Ubuntu18.04编译gstreamer 1.18源码
sudo apt-get install python3sudo apt-get install python3-pipsudo apt-get updatesudo apt-get upgradepip3 install --user mesongit clone git@gitlab.freedesktop.org:gstreamer/gst-build.git -b 1.18cd gst-buildmeson buildninja -C builddir原创 2021-08-01 11:50:27 · 2328 阅读 · 1 评论 -
GStreamer开发简单MP4播放器(二)
基于上一篇GStreamer开发简单MP4播放器(一)的基础上,在官网上找到了GStreamer和QT联合使用的案例,于是copy了部分代码,调通了暂停,seek功能,本来向实现个音量调节,但是发现案例都是基于playbin的,暂时没找到解决方案,先把部分代码贴上来。1 暂停和停止播放功能void PlayerWindow::onPauseClicked() { gst_element_set_state (pipeline, GST_STATE_PAUSED);}void PlayerW原创 2021-07-04 21:08:46 · 1807 阅读 · 8 评论 -
GStreamer开发简单MP4播放器(一)
1 前言工作一年,兜兜转转,研究生期间从事物联网前后端开发,接触过bootstrap,mysql,vue,element,dotnet core,three.js,了解过不少东西,但是都是一些肤浅的东西,没有深入研究。工作后从事变频器开发,主要是电机控制算法仿真以及编码实现,TI dsp芯片的底层配置和应用,又进入了一个全新的领域,一下子进入了嵌入式软件领域,弥补了学校期间开发板编程调试能力欠缺的不足。后来因个人原因更换了工作,也就脱离了工业自动化这个行业。不说废话了,最近因工作需求接触了GStream原创 2021-07-04 10:56:46 · 2906 阅读 · 0 评论