自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

R_X

Be bold, go after what you really want.

  • 博客(20)
  • 收藏
  • 关注

原创 Gstreamer播放教程3: Short-cutting the pipeline (缩短管道)

1.目标1.目标基本教程8:Short-cutting the pipeline展示了应用程序如何使用两个特殊元素appsrc和appsink手动提取或注入数据到管道中。Playbin也允许使用这些元素,但连接它们的方法不同。要链接appsink到playbin,请参见回放教程7:Custom playbin sinks。本教程展示了如何链接appsrc和playbin如何配置appsrc2.A playbin waveform generator3.实现1.code#include.

2021-12-30 17:19:36 1709

原创 Gstreamer播放教程2: Subtitle management (字幕管理)

文章目录1.目标2.介绍3.实现1.compile2.code4.解析1.属性设置5.讨论1.目标本教程与前一个非常类似,但我们将使用字幕流之间的不同音频流之间切换。 这将允许我们学习:如何选择字幕流如何增加外部的字幕如何自定义字幕的字体2.介绍我们已经知道(从之前的教程中)容器文件可以容纳多个音频和视频流,我们可以很容易地通过改变playbin的current-audio或current-video属性来选择它们。切换字幕也很简单。值得注意的是,就像音频和视频一样,playbin负责为

2021-12-30 17:17:29 567

原创 Gstreamer播放教程1: playbin usage

文章目录1.Goal2.介绍3.实现1.compile2.code4.解析1.数据定义2.函数定义3.flag操作4.playbin属性设置5.处理键盘响应6.main loop7.analyze_streams8.handle_keyboard5.讨论1.Goal展示了如何自定义playbin元素。如何了解在文件中包含多少流,以及如何切换如何收集关于每个流的信息2.介绍更频繁地,可以找到多个音频,视频和字幕流嵌入在一个文件中。 最常见的情况是常规电影,其中包含一个视频,一个音频流(立体声或

2021-12-30 17:13:15 837

原创 Gstreamer播放教程5: Color Balance

文章目录1. Goal2. Introduction3. Color balance example3.1 code3.2 compile4. Analyze4.1 code分析4.2 使用接口参考5. Conclusion1. Goal亮度、对比度、色相和饱和度是常见的视频调整,它们在GStreamer中统称为色彩平衡设置。本教程展示了:如何找到可用的色彩平衡通道如何改变它们2. IntroductionBasic tutorial 5: GUI toolkit integration 已

2021-12-30 17:10:30 551

原创 Gstreamer基础教程14:好用的元素

文章目录1. Goal2. Elements2.1 Bins1. playbin2. uridecodebin3. decodebin2.2 File input/output1. filesrc2. filesink2.3 Network1. souphttpsrc2.4 Test media generation1. videotestsrc2. audiotestsrc2.5 Video adapters1. videoconvert2. videorate3. videoscale2.6 Audio

2021-06-07 15:51:46 1345

原创 Gstreamer基础教程13:Playback Speed

文章目录1.Goal2.介绍3. A Trick mode player3.1 Compile3.2 Code1.Goal快进、倒放和慢动作都是所谓的技巧模式,它们都有修改正常播放速率的共同之处。本教程展示了如何实现这些效果,并在处理中添加frame-stepping。特别是,它显示如何改变播放速率,比正常速度快或慢,向前或向后如何逐帧推进视频2.介绍快进是一种以高于正常(预期)速度播放媒体的技术;而慢动作使用的速度低于预期的速度。反向回放做同样的事情,只是向后,从流的结尾到开始。所有这些

2021-06-07 10:37:10 617

原创 Gstreamer基础教程12: Streamer流

文章目录1. Goal2. Introducion3. A network-resilient example3.1 Compile3.2 Code4.解析5.总结1. Goal直接从Internet播放媒体而不将其存储在本地称为流。 每当我们使用以http://开头的URI时,我们都会在整个教程中这样做。 本教程显示了流媒体时要记住的其他几点。 特别是:如何启用缓冲(缓解网络问题)如何从中断中恢复(时钟丢失)2. Introducion流式传输时,媒体块一旦从网络到达,便会解码并排队等待呈

2021-06-07 10:35:07 449

原创 Gstreamer基础教程11: 调试工具

文章目录1. Goal2. Printing debug information2.1 The debug log2.2 Adding your own debug information2.3 Getting pipeline graphs3. 总结1. Goal有时情况无法按预期进行,并且从bus上检索到的错误消息(如果有)只是无法提供足够的信息。 幸运的是,GStreamer附带了大量调试信息,这些信息通常可以提示问题所在。 本教程显示:如何从GStreamer获取更多调试信息如何将自己的调

2021-06-07 10:22:28 522

原创 Gstreamer基础教程10: Gstreamer 工具

文章目录1. Goal2. 介绍3. gst-lanuch-1.03.1 Elements3.2 Properties3.3 Named elements3.4 Pads3.5 Caps filters3.6 Examples4. gst-inspect-1.05. gst-discoverer-1.06. Conclusion1. GoalGStreamer附带了一系列工具,从方便到绝对必要。 本教程中没有代码,请坐下来放松身心,我们将教您:如何在不使用C的情况下从命令行构建和运行GStreame

2021-06-07 10:21:12 1471 3

原创 Gstreamer基础教程9: 媒体信息采集

文章目录1.Goal2.介绍3.The GStreamer Discoverer3.1 Compile3.2 Code4.解析5.讨论1.Goal有时您可能想快速找出文件(或URI)包含哪种媒体,或者您是否能够播放所有媒体。 您可以构建一个管道,将其设置为运行,并查看总线消息,但是GStreamer具有一个实用程序可以为您完成此任务。 本教程显示:如何恢复有关URI的信息如何确定URI是否可播放2.介绍GstDiscoverer是在pbutils库(插件基础实用程序)中找到的实用程序对象,该

2021-06-07 10:18:53 498

原创 Gstreamer基础教程8: 缩短管道

文章目录1. Goal2. Introductin2.1 Buffer2.2 This tutorial3. Implement3.1 Compile3.2 Code4.解析使用buffer中的所有合并的内存块来填充info。flags描述对内存的期望访问。当flags为GST_MAP_WRITE时,buffer应可写(从gst_buffer_is_writable返回)。当buffer可写但内存不可写时,将自动创建并返回可写副本。buffer memory的只读副本也将被该可写副本替换。使用后,应使用gs

2021-06-07 10:08:10 516

原创 Gstreamer基础教程7: 多线程和Pad可用性

文章目录1. Goal2.介绍2.1 多线程2.2 The example pipeline2.3 Request Pads3. Implement3.1 Compile3.2 Code4. 解析5. 讨论1. GoalGStreamer自动处理多线程,但是在某些情况下,您可能需要手动解耦线程。 本教程显示了如何执行此操作,此外,还完成了有关“ Pad Availability”的说明。 更准确地说,此文档说明:如何为pipeline的某些部分创建新的执行线程什么是Pad可用性如何复制流2.

2020-12-21 20:16:10 442

原创 Gstreamer基础课程6: 媒体格式和Pad Caps

文章目录1.目标2.介绍2.1 Pads2.2 Pad 模版2.3 功能示例2.4 PS3.Implement3.1 Compile3.2 Code4.解析5.讨论1.目标Pad是Gstreamer的基本元素。本教程主要是what are Pad CapabilitiesHow to retrieve themWhen to retrieve themWhy you need to know about them2.介绍2.1 PadsPads允许数据进入和离开元素。Pad Caps则

2020-12-21 20:04:29 661

原创 Gstreamer基础课程4: 时间管理

1.Goal2.Introduce3.Implement3.1. Compile3.2. Code4. 解析4.1. 数据封装4.2. pipeline创建4.3. bus使用4.4. UI界面刷新1.Goal如何使用Gstreamer与时间相关的工具。在pipeline中查询流位置或持续时间之类的消息在流中查找(跳转)到其他位置(时间)2.IntroduceGstQuery机制允许向element或pad询问一条消息。在此是里中,会询问pipeline是.

2020-12-18 20:28:05 386 1

原创 Gstreamer基础课程3: 动态管道

文章目录1.Goal2.介绍2.1. pad1.2. demuxer1.Goal介绍Gstreamer的剩余的概念,这些概念允许在信息可用时“动态”创建管道,而不是在应用程序开始时就定义一个整体式管道。2.介绍2.1. padGstreamer中的element通过pad(GstPad)来相互通信。source element只有src pad,sink element只有sink pad,filter具有src,sink pad。1.2. demuxer在此教程中会打开一个multipl

2020-10-23 17:49:31 607

原创 Gstreamer基础教程2: Gstremaer概念

文章目录前言一、Goal二、Code1.编译运行2.code三. 解析1.element创建总结前言Gstreamer中的概念。一、Goal创建element连接element自定义element的行为二、Code1.编译运行gcc basic-tutorial-2.c -o basic-tutorial-2 `pkg-config --cflags --libs gstreamer-1.0`2.code#include <gst/gst.h>int main(

2020-10-23 11:31:27 401

原创 Gstreamer基础教程1: Hello world

Gstreamer基础教程1:Hello world1. Goal2. Code3. 解析3.1. 使用的函数3.1.1. gst_init2.gst_parse_launch3.2. 整体分析1. Goal播放一段视频。2. Code编译运行gcc basic-tutorial-1.c -o basic-tutorial-1 `pkg-config --cflags --libs gstreamer-1.0`./basic-tutorial-1basic-tutorial-1.c#inc

2020-10-22 21:00:10 482

转载 strtok的使用以及字符串指针的使用

strtok函数分解字符串为一组标记串,原型为: extern char *strtok(char *s, char *delim); s 为要分解的字符串, delim 为分隔符字符串。首次调用时, s 必须指向要分解的字符串,随后调用要把 s 设成 NULL 。 strtok 在 s 中查找包含在 delim 中的字符 并用 NULL(‘/0’) 来替换,直到找遍整 个字符串。返回指向目前找到...

2019-10-12 14:30:14 664

原创 gst-launch-1.0在Linux下的命令

一.前提:1.要连入相关的设备,虚拟机里的Ubuntu可在“移动设备”里查找相关设备2.在Linux上安装相关的gstreamer3.gst-launch1.0和gst-launch0.1相比有所不同,具体区别见GStreamer 0.10到1.0移植指南二.命令一)实现测试视频显示gst-launch-1.0 videotestsrc ! xvimagesink二)实现摄像头采...

2019-03-12 16:12:56 14750 5

原创 前提

查询资料步骤1.直接查官网2.再百度查论坛你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将...

2019-03-11 20:09:13 116

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除