http://processors.wiki.ti.com/index.php/Example_GStreamer_Pipelines#H.264_RTP_Streaming

http://processors.wiki.ti.com/index.php/GStreamer

https://gstreamer.freedesktop.org/documentation/application-development/basics/helloworld.html

https://github.com/GStreamer/gst-examples

https://github.com/GStreamer/gst-rtsp-server/tree/master/examples

https://gstreamer.ti.com/gf/project/gstreamer_ti/scmsvn/?action=browse&path=%2Fbranches%2F

https://gstreamer.freedesktop.org/documentation/rtp.html

https://gstreamer.freedesktop.org/

https://gstreamer.ti.com/gf/project/gstreamer_ti/

最近做一个项目是要用OpenCV来加工处理rtsp流,直接用opencv 中自带的VideoCapture video(rtsp://192.168.1.221:554)这种方式能够拉到rtsp流,但是很容易解码错误,毕竟opencv也不是做视频解码的,后来决定用vlc来处理,代码如下。
#include "libvlc.h"
#include "libvlc_media.h"
#include "libvlc_media_player.h"
#include <opencv2\opencv.hpp>
#include <opencv2\video\background_segm.hpp>
#include "opencv2/imgproc.hpp"
#include <opencv2/highgui.hpp>
#include <opencv2/video.hpp>
#include <opencv2/objdetect.hpp> Mat videobuf;
void* lock(void *data, void**p_pixels)
{
*p_pixels = videobuf.data;
return NULL;
} void VideoShow::rtspstream()
{
videobuf.create(height,width,CV_8UC3);
libvlc_media_t* media = NULL;
libvlc_media_player_t* mediaPlayer = NULL;
char const* vlc_args[] =
{
"-I",
"dummy",
"--ignore-config",
}; libvlc_instance_t* instance = libvlc_new(sizeof(vlc_args) / sizeof(vlc_args[0]), vlc_args); media = libvlc_media_new_location(instance, "rtsp://192.168.1.221:554");
mediaPlayer = libvlc_media_player_new_from_media(media); //libvlc_media_player_set_media(mediaPlayer, media);
libvlc_video_set_callbacks(mediaPlayer, lock, NULL, NULL, NULL);
libvlc_video_set_format(mediaPlayer, "RV24", width, height, width*24/8);
libvlc_media_release(media); for(int i=0;i<5;i++)
{
libvlc_media_player_play(mediaPlayer);
Sleep(500);
}
}
int main()
{
Mat show ;
while(true){
show = videobuf;
imshow("rtsp",show);
waitKey(30);
}
}

【ARM-Linux开发】TI 关于Gstreamer使用的几个参考的更多相关文章

  1. 在Ubuntu上建立Arm Linux 开发环境

    我使用的是友善2410的板子,以前都是用Fedora,现在家里的电脑被我转为Linux专用的了,装的是Ubuntu.但是嵌入式还是要玩的,在装载过程中也遇到一些小麻烦.在此记录一下,一来自己比较健忘, ...

  2. 成功移植SQLite3到ARM Linux开发板

    SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了 ...

  3. minigui移植到arm linux开发板上无法执行

    要保证目录下有该文件 /etc/MiniGUI.cfg 复制过程使用cp –af 强制复制

  4. 【DSP开发】【Linux开发】基于ARM+DSP进行应用开发

    针对当前应用的复杂性,SOC芯片更好能能满足应用和媒体的需求,集成众多接口,用ARM做为应用处理器进行多样化的应用开发和用户界面和接口,利用DSP进行算法加速,特别是媒体的编解码算法加速,既能够保持算 ...

  5. 应聘linux/ARM嵌入式开发岗位

    **************************************************************** 因为发在中华英才和智联招聘没有人采我所以我 在这里发布我的个人简历希望 ...

  6. 构建 ARM Linux 4.7.3 嵌入式开发环境 —— BusyBox 构建 RootFS

    上一篇我们已经成功将 ARM Linux 4.7.3 的内核利用 U-BOOT 引导了起来.但是细心的你会发现,引导到后面,系统无法启动,出现内核恐慌 (Kernel Panic). 原因是找不到文件 ...

  7. 构建 ARM Linux 4.7.3 嵌入式开发环境 —— U-BOOT 引导 Kernel

    经过若干天的反复测试,搜索.终于成功利用 Qemu 在 u-boot 下引导 ARM Linux 4.7.3 内核.如下详细解释整个构建过程. 准备环境 运行环境:Ubuntu 16.04 需要的虚拟 ...

  8. Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核

    Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核 标签(空格分隔): Qemu ARM Linux 在上文<Qemu搭建ARM vexpress开发环 ...

  9. 【Qt开发】【VS开发】【Linux开发】OpenCV、Qt-MinGw、Qt-msvc、VS2010、VS2015、Ubuntu Linux、ARM Linux中几个特别容易混淆的内容

    [Qt开发][VS开发][Linux开发]OpenCV.Qt-MinGw.Qt-msvc.VS2010.VS2015.Ubuntu Linux.ARM Linux中几个特别容易混淆的内容 标签:[Qt ...

随机推荐

  1. vue+上传文件夹

    在做项目开发的时候,上传东西无论文件也好,还是文件夹都需要用到 <input type="file" id="filepicker" name=" ...

  2. 元素(element)创建

    一.元素创建的三种方式-------元素创建是为了提高用户的体验 1.第一种 document.write("标签代码及内容") <input type="butt ...

  3. s-w-i-p-e-r做一个-老-唬-机-抽-蒋

    <template> <div class="selfLotteryBox"> <div class="row"> < ...

  4. 通过Confulence API统计用户文档贡献量

    Confulence提供了非常清晰的RESTful API,直接使用API比confluence_python_cli这个库更方便. 参考文档:https://developer.atlassian. ...

  5. 正确处理listview的position

    当ListView包含有HeaderView或FooterView时,传入getView或者onItemClick的position是怎样的,这是个值得探讨的问题 先列出错误的用法 定义: priva ...

  6. vue学习一

    自己根据网上的教程新建了一个vue_tes项目.想自己在里面修改,添加各种内容.新建了几个vue页面,一直想把他们关联起来展示.非常心急,没有仔细去看文档,而且网上的教程都是单页面的.很好理解.自己创 ...

  7. CodeForces - 1175D Array Splitting(数组划分+后缀和+贪心)

    You are given an array a1,a2,…,ana1,a2,…,an and an integer kk. You are asked to divide this array in ...

  8. 2018-2019-2 20165209 《网络对抗技术》Exp9: Web安全基础

    2018-2019-2 20165209 <网络对抗技术>Exp9: Web安全基础 1 基础问题回答和实验内容 1.1基础问题回答 (1)SQL注入攻击原理,如何防御? 原理:SQL注入 ...

  9. AOP 与 Spring中AOP使用(上)

    AOP简介 在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程, 通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术. AOP是OOP的延续 ...

  10. qt 添加程序插件目录

    QApplication::addLibraryPath(QApplication::applicationDirPath()); QApplication::addLibraryPath(QAppl ...