【ARM-Linux开发】TI 关于Gstreamer使用的几个参考
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使用的几个参考的更多相关文章
- 在Ubuntu上建立Arm Linux 开发环境
我使用的是友善2410的板子,以前都是用Fedora,现在家里的电脑被我转为Linux专用的了,装的是Ubuntu.但是嵌入式还是要玩的,在装载过程中也遇到一些小麻烦.在此记录一下,一来自己比较健忘, ...
- 成功移植SQLite3到ARM Linux开发板
SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了 ...
- minigui移植到arm linux开发板上无法执行
要保证目录下有该文件 /etc/MiniGUI.cfg 复制过程使用cp –af 强制复制
- 【DSP开发】【Linux开发】基于ARM+DSP进行应用开发
针对当前应用的复杂性,SOC芯片更好能能满足应用和媒体的需求,集成众多接口,用ARM做为应用处理器进行多样化的应用开发和用户界面和接口,利用DSP进行算法加速,特别是媒体的编解码算法加速,既能够保持算 ...
- 应聘linux/ARM嵌入式开发岗位
**************************************************************** 因为发在中华英才和智联招聘没有人采我所以我 在这里发布我的个人简历希望 ...
- 构建 ARM Linux 4.7.3 嵌入式开发环境 —— BusyBox 构建 RootFS
上一篇我们已经成功将 ARM Linux 4.7.3 的内核利用 U-BOOT 引导了起来.但是细心的你会发现,引导到后面,系统无法启动,出现内核恐慌 (Kernel Panic). 原因是找不到文件 ...
- 构建 ARM Linux 4.7.3 嵌入式开发环境 —— U-BOOT 引导 Kernel
经过若干天的反复测试,搜索.终于成功利用 Qemu 在 u-boot 下引导 ARM Linux 4.7.3 内核.如下详细解释整个构建过程. 准备环境 运行环境:Ubuntu 16.04 需要的虚拟 ...
- Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核
Qemu搭建ARM vexpress开发环境(二)----通过u-boot启动Linux内核 标签(空格分隔): Qemu ARM Linux 在上文<Qemu搭建ARM vexpress开发环 ...
- 【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 ...
随机推荐
- 小白学习.NET的初期经验
对于.NET,刚开始确实很迷茫,确实,对于程序员这种职业我不是很了解,我以前是学数控的 ,对于我心目中的程序而言,程序就是我常用的那些代码,毕竟做了四五年的数控,同样都是程序,给我的了解就是都是代码: ...
- webservice的soap
1.soap的定义: 2.使用TCP/IP Monitor监视Soap协议 eclipse工具,show view-->other-->debug-->TCP/IP Monitor ...
- C# 使用递归获取所有下属、所有子部门……
本例中获取的是所有的晚辈!首先定义家庭成员类: public class FamilyMember { /// <summary> /// 身份 /// </summary> ...
- js2py
js2py
- ORACLE批量导入图片到BLOB字段
要插入图片的表不是固定的,而且是批量插入很多张,还要考虑到因为图片的文件名错误,修改后要再次插入,此时应避免已经插入的重复执行操作, 浪费时间. 所以就选择先用一张临时表来暂时保存从文件系统读取的照片 ...
- Java基础系列 - 查找数组的最大值和最小值
package com.test6; public class test5 { public static void main(String[] args) { int[] arr = {1, 2, ...
- Linux之jq
什么是jq?jq是Linux下面把文本字符串格式化成json格式的工具 系统环境:centos 7 一.安装 (1)yum安装 a.安装epel源 # wget http://dl.fedorapro ...
- 树莓派安装配置Nginx+PHP7+MariaDB
原文地址:http://blog.sina.com.cn/s/blog_150f554f50102yhra.html 一.安装 Nginx 和 PHP7 1.安装Nginx sudo apt inst ...
- 命令行运行Python脚本时传入参数的三种方式
原文链接:命令行运行Python脚本时传入参数的三种方式(原文的几处错误在此已纠正) 如果在运行python脚本时需要传入一些参数,例如gpus与batch_size,可以使用如下三种方式. pyth ...
- 深度学习: 学习率 (learning rate)
Introduction 学习率 (learning rate),控制 模型的 学习进度 : lr 即 stride (步长) ,即反向传播算法中的 ηη : ωn←ωn−η∂L∂ωnωn←ωn−η∂ ...