原来的方案:

gboolean callback_bus_call (GstBus * bus, GstMessage * msg, gpointer data)
{......gst_element_set_state(pipeline, GST_STATE_NULL);g_main_loop_quit(loop);return true;
}int main_thread()
{......GstBus* bus = gst_pipeline_get_bus(GST_PIPELINE(pipeline));guint bus_watch_id = gst_bus_add_watch(bus, callback_bus_call, pTask);gst_object_unref(bus);......g_main_loop_run (loop);
}

  试图在callbak_bus_call()中得到出错和结束消息,然后再退出.结果发现要么无法退出,要么直接崩溃.

  以下是正确办法:

int main_thread()
{
......//阻塞,直到收到指定的消息GstBus* bus = gst_element_get_bus(pipeline);GstMessage* msg = gst_bus_timed_pop_filtered (bus, GST_CLOCK_TIME_NONE, (GstMessageType)(GST_MESSAGE_ERROR | GST_MESSAGE_EOS));if (msg != NULL){gst_message_unref(msg);}gst_object_unref (bus);gst_element_set_state(pipeline, GST_STATE_NULL);gst_object_unref(pipeline);
......
}

gstreamer正确的结束办法相关推荐

  1. chrome应用程序无法启动因为并行配置不正确的处理办法(亲测版本不一样也是类似的操作)

    有使用chrome谷歌浏览器的朋友可能会遇到这样的错误,那就是chrome.exe 应用程序无法启动因为应用程序的并行配置不正确,谷歌浏览器也打不开的情况,那么这一问题要如何解决呢?可能很多朋友不太了 ...

  2. Chrome内核浏览器显示【您的时钟快了,您计算机的日期和时间不正确】解决办法

    Chrome内核浏览器显示[您的时钟快了,您计算机的日期和时间不正确]解决办法 出现问题 问题原因 解决办法 综上 [您的时钟快了,您计算机的日期和时间不正确]解决办法 出现问题 这几天我使用[联想浏 ...

  3. ps4系统软件升级无法连接服务器,这才是正确的解决办法 PS4怎么通过优盘升级系统...

    原标题:这才是正确的解决办法 PS4怎么通过优盘升级系统 最近家里网络抽风,PS4虽然能连上网络,但是速度非常差.结果开机就提示需要升级到4.71系统,看着几KB的速度实在让人上愁,只好通过PC把完整 ...

  4. PS 2021安装插件提示”无法加载,未经签署“怎么办?ps2021插件未经正确签署解决办法!

    photoshop是设计必备图片处理软件,不管是专业人士还是业余新手都非常喜欢这款图片处理工具,PS2021更新后新用户随之也增加了不少,但是很多朋友发现PS 2021在安装插件的时候提示" ...

  5. Python3在创建文件及文件夹目录的时候windows10文件名不能包含的特殊符号处理转义;OSError: [WinError 123] 文件名、目录名或卷标语法不正确时处理办法

    在写python爬虫时,爬取文件下载时出现命名错误: OSError: [WinError 123] 文件名.目录名或卷标语法不正确时处理办法 查了一下,window有9个特殊字符在命名不能使用:分别 ...

  6. chrome应用程序无法启动因为并行配置不正确的处理办法(亲测可能版本不同)

    有使用chrome谷歌浏览器的朋友可能会遇到这样的错误,那就是chrome.exe 应用程序无法启动因为应用程序的并行配置不正确,谷歌浏览器也打不开的情况,那么这一问题要如何解决呢?可能很多朋友不太了 ...

  7. appium使用sendkeys输入银行卡卡号(每4个数字自动空一格)总是输入不正确的解决办法

    appium使用sendkeys输入银行卡卡号(每4个数字自动空一格)总是输入不正确的解决办法 方法一: public static void inputComsumeInfo(WebElement ...

  8. 加载MNIST报错:[WinError 10060] 由于连接方在一段时间后没有正确答复解决办法(亲测)

    转载:https://blog.csdn.net/landcruiser007/article/details/79346982 tensorflow加载mnist数据集,一些书上和博客中的代码如下: ...

  9. windows不能确定用户或计算机名称,Windows10开机时提示“用户名或密码不正确”的解决办法...

    对于部分使用Windows 10 系统的朋友来说,会遇到这样的问题,开机时会提示"用户名或密码不正确,请再试一次(The User Name or Password is incorrect ...

  10. 操作无法完成 计算机名不正确,win10系统连接共享打印机时提示“操作无法完成,键入的打印机名不正确”的详细办法...

    win10系统使用久了,好多网友反馈说win10系统连接共享打印机时提示"操作无法完成,键入的打印机名不正确"的问题,非常不方便.有什么办法可以永久解决win10系统连接共享打印机 ...

最新文章

  1. 「小程序JAVA实战」微信开发者工具helloworld(三)
  2. 全球顶会论文作者,28天手把手带你复现顶会论文
  3. wxWidgets:wxDialog类用法
  4. DCMTK:测试框架内容Frame Content FG类
  5. sci_loopback_int的例程(中断程序)
  6. c语言函数能改变指针吗,如何修改传递给C中函数的指针?
  7. linux+listen错误,linux listen()
  8. 统计学习方法读书笔记11-决策树课后习题
  9. 鸿蒙20支持哪些设备,华为鸿蒙OS 2.0支持哪些机型,有哪些区别
  10. 两种方式(xml+代码)构建SqlSessionFactory+完整实现
  11. 梦成真——一个普通学校计算机系学生的出国梦
  12. Redisson读写锁
  13. 大盘酝酿反弹中-可以短跑几天
  14. 使用单线程还是多线程的问题
  15. 三:Sensor SLPI层代码分析---
  16. OpenBLT的介绍、应用场景及开源许可
  17. 三分钟,带你了解零代码开发
  18. 白兵机器人怎样连接_面部识别+App互动,UBTECH 优必选 星球大战系列 智能语音白兵机器人...
  19. MATLAB-一维插值运算
  20. 高校图书馆借阅排行榜:Top40好书推荐

热门文章

  1. readline函数重新定位到第一行_学习MATCH函数3种匹配方式,轻松确定数据位置和数量...
  2. android服务之service(其二)关于aidl进程间通信,Android初级教程进程间的通信AIDL
  3. php input样式,input能改变css样式吗
  4. 软件开发中 前台、中台、后台英文_中台为什么这么火?
  5. php date日期相关函数
  6. 记录一个对外接口签名问题
  7. 5-17 汉诺塔的非递归实现 (25分)
  8. Oracle认证/维保技术支持服务找重庆思庄
  9. 企业***网的规划及组建
  10. Spring Cloud(Greenwich版)-02-服务注册与服务发现-Eureka入门