cv2.VideoCapture()读取RTSP视频流不能读取视频帧 5C

我先用VLC发RTSP视频流,视频格式为mp4,该视频流可以用另一个VLC成功接收并播放,而我用python的opencv库写的代码不能成功读取,该代码可以成功读取本地视频。
代码如下:
import cv2

video_full_path = "rtsp://cky:30121323@10.133.183.133:8554/1"
cap = cv2.VideoCapture(video_full_path)
print(cap.isOpened())
frame_count = 1
success = True
while (success):
success, frame = cap.read()
print(frame)
print('Read a new frame: ', success)
params = []
# params.append(cv.CV_IMWRITE_PXM_BINARY)
params.append(1)
cv2.imwrite("video" + "_%d.jpg" % frame_count, frame, params)

frame_count = frame_count + 1

cap.release()

望解决。

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
OpenCV读取RTSP视频流
用opencv的VideoCapture读取RTSP视频流,只有opencv3.1版本可以,之前的版本都无法读取视频流。可能的原因是云平台的RTSP视频流太差,经常错码。项目最后使用的是opencv2.4.9,然后ffmpeg的dll库用的是opencv3.1的,就可以读取视频流了。
MFC读取RTSP视频流
可以移植到自己项目中,MFC 读取 RTSP 视频流
python读取视频流提取视频帧的方法
方法一:通过imageio库和skimage库 1. 安装环境: pip install imageio pip install skimage 这时候会报错Please install the `scikit-image` package (instead of `skimage`) 所以按照提示操作即可: pip install scikit-image 环境安装成功。 2.通
OpenCV的VideoCapture读取rtsp实时视频流,如何获取最新帧?
视频分析算法效率1帧/秒,所以我需要等算法完成后,再获得最新的一帧图像。n然而VideoCapture很“耿直”的一帧不落的输出帧,“等”我处理每一帧。n算法速度跟不上视频帧速,旧帧越积越多。不能实现处理最新帧的目的。n如何解决?
ffmpeg之读取视频帧
main.cpp代码如下 #include "myplayer.h" #include #pragma comment(lib,"avformat.lib") #pragma comment(lib,"avutil.lib") #pragma comment(lib,"avcodec.lib") extern "C"{ #include } static double r2d(AVRatio
VC++读取视频帧
视频帧读取,基于Vc++ 6.0 ,有关avi类型的类
OpenCV读取视频帧
例子来源于Learning OpenCV 3 // video.cpp #include <iostream> #include "opencv2/highgui/highgui.hpp" #include &a
cv2.videocapture()失败,无法读取视频的解决办法
在Linux上调用cv2.videocapture()函数,然后用isOpened()函数检查是否读取到视频,一直返回读取视频失败, 在网上找了很多相关的解决途径,都没有解决问题,比如: 1、缺少处理视频文件需要的dll,把opencv文件夹中的 \3rdparty\ffmpeg里的opecv_ffmpeg.dll文件(e.g我的是D:\opencv\3rdparty\ffmpeg\opecv_f...
TX2+GStreamer+OpenCV读取保存rtsp视频流数据
在之前的文章中,在TX2上利用GStreamer和OpenCV实现了板载相机/USB相机/IP摄像头的读取,这篇文章在之前的基础上,重点优化了读取网络相机视频的代码,并通过OpenCV将视频一帧一帧进行保存,具体代码如下# coding=utf-8 import sys import argparse import cv2 import numpy as np if __name__ == "...
读取YUV视频指定帧
分别读取YUV视频特定帧的Y、U、V分量。
重构读取视频帧接口
ffmpeg是世界上应用广的开源视频处理框架,在各个平台(windows,linux,嵌入式、Android、IOS)被广泛应用,可以说是做视频相关项目技能nqt是目前跨平台项目界面开发的第一选择,本课程基于这两种框架在加上VC++,给大家讲解延时如何开发出一个视频播放器,各个模块如何结合,如何考虑性能问题,如何设计封装类,如何处理各种异常情况。
ffmpeg读取本地视频,获取视频帧
本文转自:https://blog.csdn.net/yinsui1839/article/details/80519742 /******** *本代码参考自雷神博客 * **********/ #ifdef __cplusplus extern "C" { #endif #include <libavcodec/avcodec.h> #include <libavfor...
cv2 读取显示视频并保存视频帧
 本篇博客实现通过python中的cv2模块读取显示视频,并通过键盘按键保存视频帧。 import cv2 import string, random def id_generator(size=6, chars=string.ascii_uppercase + string.digits): return ''.join(random.choice(chars) for _ i...
matlab读取视频分帧代码
将视频分为一帧帧图片,利用matlab读取后处理
Matlab-读取视频、保存视频、标题第几帧
1.matlab读取视频 clc; clear; close all; %---<初始化读取视频>---% video = VideoReader('F:\WorkFile\4_数据\4.双目视频\2019.5.24\MyVideo融合后1.avi'); nFrames = video.NumberOfFrames; M = video.Height; N = video.Wi...
Matlab读取视频分割帧及标签
close all clc; clear all % read frames videopath='Videos/'; %video path videoname='test_20180320homan.mp4'; %video name diraddress='/home/ada/frames2/'; %frames path videobj = VideoRead...
Matlab中有关视频读取和帧保存
首先要了解VideoReader和imwrite的用法: imwrite(A,FILENAME,FMT) writes the image A to the file specified by FILENAME in the format specified by FMT. clc;clear all; obj = VideoReader('D://医疗图像处理/图像数据/胶囊.avi'); #...
ffmpeg读取视频帧并解码播放
用ffmpeg3.2.4开发的视频播放器,可以选择文件播放,暂停等功能,完整的源码,可以直接编译运行。环境VS2015,Qt5.6.3。
opencv读取avi视频并抽取帧
#include "stdafx.h" #include using namespace std; using namespace cv; int main(int argc, char** argv) {     //cvNamedWindow("test", CV_WINDOW_AUTOSIZE);     CvCapture* capture = cvCreateFi
Matlab读取视频并处理成帧保存
Matlab读取视频并处理成帧保存 本文介绍主要介绍VideoReader读取视频,并用imwrite将视频帧保存。
Matlab读取并按帧显示视频代码
使用Matlab来获取读取并按帧显示视频。
【opencv-python】读取视频,提取帧存为本地图片
import cv2 import os path=r'E:/mywork/6月/frame/' cap = cv2.VideoCapture('E:/mywork/6月/h.mov') i=1 if not os.path.exists(path): os.makedirs(path) while(cap.isOpened()): ret, frame = cap.read()#ret是b...
Python之OpenCV读取视频抽帧保存
# -*- coding:utf8 -*- import cv2 import os import shutil #视频文件名字 filename = '00156.mp4' #保存图片的路径 savedpath = filename.split('.')[0] + '/' isExists = os.path.exists(savedpath) if not isExists: o...
YUV视频读取单帧图片
在YUV420中,一个像素点对应一个Y,一个2X2的小方块对应一个U和V。对于所有YUV420图像,它们的Y值排列是完全相同的,因为只有Y的图像就是灰度图像。这个代码可以从YUV视频中提取每一帧画面保存成图片。
libVLC提取视频帧及自定义读取媒体文件
hello诶喂八滴跟我一起嗨嗨嗨。。。,阿循今天给大家分享一下最近在学习的开源视频播放器vlcplayer的一些心得,我这边是要把这个弄到Unity里去用,因此提取视频帧和自定义读取是很关键的功能点,前者可以拿到数据给unity渲染,后者可以在C#层面去做数据功能模块,开发效率美滋滋。 libvlc是vlc的开发者库,它的播放器也是通过libvlc实现的,我们这里用到了C++,不过也是有C#绑定...
FFMPEG系列课程-读取视频帧
再来介绍下如何读取视频帧,打开视频参考前面的文章,首先需要创建一个帧的存放对象 AVPacket pkt; memset(&pkt, 0, sizeof(AVPacket)); 再通过 int err = av_read_frame(ic, &pkt); 读取帧数据,其中ic是之前打开的视频流句柄。读取视频帧后要注意一点av_read_frame会自动给视频帧分配空间,返回值0表示成功。
读取视频帧的几种方法(自己整理)
1、第一种方法 #include "opencv2/opencv.hpp" using namespace cv; int main(int, char**) { VideoCapture cap("E:\\图片\\视频材料\\AVSEQ01.avi"); // open the default camera if(!cap.isOpened()) // check if w
opencv不能读取视频的问题
cap=cv2.VideoCapture(‘video.avi’) cap.isOpened()=False 这个stackoverflow的帖子写的很详细 https://stackoverflow.com/questions/31040746/cant-open-video-using-opencv 先下载好ffmpeg源码(给个帖子吧)在这里下的。。https://download.csdn...
python-opencv 多线程读取rtsp视频流,并保存到本地
先说一下我遇到的问题,用普通的while循环的方式显示视频画面非常卡顿,于是采用的multiprocessing多进程,然后出现一个问题就是每次保存只能保存十几kb的东西,经过反复检查发现,是没有加release(),加上就好了,代码如下: import os import cv2 import gc import time from multiprocessing imp...
Python cv2 读取rtsp视频流/USB摄像头并显示
#!/bin/python #### in rtsp server: #### ffserver -f /etc/ffserver.conf & #### ffmpeg -f v4l2 -i /dev/video0 -s 640x480 -r 24 -vcodec libx264 -an http://127.0.0.1:8090/feed1.ffm #### sudo apt ins...
HTML播放海康视频的RTSP视频流
亲测,可用,通过HTML播放海康视频的RTSP视频流 效果不错
如何读取视频文件的帧
本人是新手,请问如何读取视频文件一帧一帧的数据,然后做个标记,最后放到内存中??rn请高手指教~
opencv打开rtsp视频流并显示视频
VS2008编译,opencv2.4.1打开rtsp视频流并显示视频,里面包含opencv的lib、dll以及头文件,包含了完整的工程。可以编译,也可以直接运行编译好的exe
[Android]从视频流读取帧图像保存到本地
从视频流读取帧图像保存到本地在进行全景视频播放器开发的时候,遇到在不同的播放设备上颜色不一致的情况,故进行Debug。 首先想到的是,在不同的硬件平台上解码得到的视频帧数据是否有问题,故写了一个测试方法用于从视频流数据读取一帧保存到本地文件夹中。下面开始建立这样一个工程 新建New Project,名字为GetPicFromVideoStream首先在AndroidManifest.xml加入权
关于Live555不能获取海康的RTSP视频流
最近项目需要,开始研究Live555,看了10来天源码,C++基础薄弱,看的头晕眼花的。rn 然后做了小实验,发现Live555无法获取海康的IP摄像机的RTSP视频流,前面从Describe到Play都回复成功了,而且控制台显示的是“Started playing session . . .”,但就是没有RTP包传过来,用VLC却是可以播放海康的RTSP视频的。rn 然后我又弄了个潮流的摄像机,发现Live555是可以获取数据的,然后我分别用两个摄像头作为视频源,对比分析了一下两者的代码执行过程,除了发现海康的SDP信息中没有携带SPS之外,其它好像没什么太大区别,而SPS应该是在解码时才用的上的吧,现在Live555在收到Play回复之后连RTP包都收不到。rn 实在搞不清楚是为什么,有没有谁遇到过类似的问题,求指教啊~~~[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/onion/2.gif][/img]
opencv: 视频中提取帧图片并保存(cv2.VideoCapture)
Code 因为工作需要,写了一段代码用于在视频中提取帧图片: # coding=utf-8 # 全局变量 VIDEO_PATH = './1.avi' # 视频地址 EXTRACT_FOLDER = './extract_folder' # 存放帧图片的位置 EXTRACT_FREQUENCY = 100 # 帧提取频率 def extract_frames(video_path, ds...
rtsp视频组帧(tcp和udp)
本代码通过rtsp协议接收设备采集的数据,对采集视频数据组帧,udp下对视频丢包排序做出处理,直接编译可以使用
读取视频
aaa
视频的读取
在matlab中编写的关于视频的读取的程序。
2、读取视频、读取摄像头
介绍视频读取本质上就是读取图像,因为视频是由一帧一帧图像组成的。1秒24帧基本就能流畅的读取视频了。 ①读取视频有两种方法: A. VideoCapture cap; cap.open(“1.avi”); B. VideoCapture cap(“1.avi”);②循环显示每一帧: while(1) { Mat frame; //定义Mat变量,用来存储每一帧 c
相关热词 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池 c#5.0 安装程序 c# 分页算法 c# gmail 发邮件 c# 多层文件