标签: ip-camera

寻找IP摄像头API

我正在寻找网络IP摄像头接口,更准确地说我买了一台Neo Coolcam IP摄像头型号:NIP-02BGPW3A2.我正在寻找它的API \接口来玩它.

我开始跟踪它的请求和响应,但遗憾的是我还无法控制它,也无法找到所有命令(此模型具有移动和灯光选项).

我正在寻找样本和/或命令列表,任何帮助表示赞赏.

api ip-camera

3
推荐指数
1
解决办法
4620
查看次数

在网络浏览器中嵌入网络摄像机

我目前正在从事一个智能家居项目,该项目连接传感器之类的东西。主服务器运行在 Raspberry Pi 上,并使用 Node JS 设计。在本地网络上,您可以访问系统网页并查看日志、用户和管理传感器。

我还想添加一个摄像头流。我有一个 IP 摄像机,我想将它连接到同一个网络,并且能够在网页上实时看到它。我不介意有一些延迟或延迟,而且我不需要访问家庭网络之外的服务。

我搜索了一下,但找不到任何简单的解决方案。我阅读了 RTSP 和 RTMP 协议,它们在这些情况下可能会有所帮助。我也读到有一些插件可用,例如 VLC 和 Quick Time,但我更喜欢不需要它们的解决方案。显然,HTML5 支持这一点,但我无法继续前进。浏览器支持应该不是问题,因为我假装只使用 Google Chrome 及其最新版本。因此,如果有任何易于集成并与 Chrome 兼容的插件,那应该没问题!

我还发现了一些这样的服务:

  1. https://www.ipcamlive.com/
  2. http://rtsp.live/#login

他们似乎提供了一些免费服务,但我不确定这是否是最好的解决方案。

那么,任何人都可以帮助解决这种情况吗?如何轻松地将视频从 IP 摄像机流式传输到本地网络中的 Web 浏览器(即使存在延迟或延迟)?

谢谢,伊戈尔!

html rtmp rtsp ip-camera node.js

3
推荐指数
2
解决办法
3万
查看次数

来自IP Camera的MJPEG视频太快了

我只是想从IP摄像机(Basler BIP-1280c)中读取视频流.我想要的流保存在相机的缓冲区中,长度为40秒,并在MJPEG中解码.

现在,如果我通过我的webbrowser访问流,它会向我显示40秒没有任何问题.但实际上我需要一个能够自行下载和保存流的应用程序.

相机是通过http访问的,所以我libcurl用来访问它.这工作正常,我也可以下载流没有任何麻烦.我选择将流数据保存到*.avi文件中(希望这是正确的......?).

但现在问题是:我可以打开视频(尝试使用图腾视频播放器和VLC)并查看所有已录制的视频 - 但它太快了.整个视频持续5秒(而不是40秒).MJPEG中是否有任何标题可以放置总视频长度或fps等信息?我的意思是视频播放器必须缺少一些信息,以便它们能够快速播放?

更新:

正如答案中所建议的那样,我用hexeditor打开文件,我发现的是:

--myboundary..Content-Type: image/jpeg..Content-Length: 39050.........*Exif..II*...............V...........................2...................0210................FrameNr=000398732 6.AOI=(0800x0720)@(0240,0060)/(1280x0720).Motion=00000 (no) [00000 | 00000 | 00000 | 00000 | 00000].Alarm=0000 (no) .IO =000.RtTrigger=0...Basler..BIP2-1280c..1970:01:05 23:08:10.8 98286......JFIF.................................. ....&"((

此标头在文件中重新出现(后面跟着很多二进制数据字节).这实际上没问题,因为我在相机手册中读到所有MJPEG图片都有这个标题.

更有趣的JFIF是在最后一行.在建议的答案中,这可能是文件格式的指标.但afaik JFIF是一种像jpg一样的单一图片格式.那么这甚至可能意味着整个视频文件只是一些"无脑"的链式图片?而我的播放器只是假设他应该一个接一个地展示这些图片,而不知道帧率?

c++ video mjpeg ip-camera

2
推荐指数
1
解决办法
4279
查看次数

使用FFMPEG录制IP摄像机流

嘿我正在尝试使用FFMPEG记录IP摄像机流.但它给我输入/输出错误.这是命令

ffmpeg -i http://admin:@ip:81/livestream.cgi E:\Video\my.h264
Run Code Online (Sandbox Code Playgroud)

我的相机是H264编码的.现在请帮助如何删除此错误.任何帮助,将不胜感激 .

ffmpeg video-streaming ip-camera

2
推荐指数
1
解决办法
2万
查看次数

如何在没有音频的情况下直播 YouTube

我有两个 IP 摄像头和一台计算机,ffmpeg可以将它们重新流式传输到 YouTube。

第一凸轮

它有视频和音频。我可以使用此命令成功地重新流式传输到 YouTube。

ffmpeg -re -rtsp_transport tcp -i rtsp://192.168.aaa.bbb:554/ch0_1.h264 -acodec libmp3lame -ar 44100 -b:a 128k -pix_fmt yuv420p -profile:v baseline -s 426x240 -bufsize 2048k -vb 400k -maxrate 800k -deinterlace -vcodec libx264 -preset medium -g 30 -r 30 -f flv rtmp://a.rtmp.youtube.com/live2/<YouTube_key>

第二个凸轮

它只有视频。但是,使用下面的两个命令,我无法流式传输到 YouTube。(虽然ffmpeg进程运行良好)

ffmpeg -re -rtsp_transport tcp -i rtsp://192.168.aaa.ccc/Streaming/Channels/102 -an -pix_fmt yuv420p -profile:v baseline -s 426x240 -bufsize 2048k -vb 400k -maxrate 800k -deinterlace -vcodec libx264 -preset medium -g 30 …

youtube ffmpeg ip-camera live-streaming

2
推荐指数
1
解决办法
4790
查看次数

使用 FFMPEG 将流从网站流式传输到 Twitch

是否可以通过 FFMPEG 将带有直播(即 ip-camera)的网站流式传输到 Twitch?如果是,有人知道如何实现这一目标吗?

streaming ffmpeg video-streaming ip-camera twitch

2
推荐指数
1
解决办法
6048
查看次数

为什么我在不是超时时收到“操作已超时”?

我正在做一个向 IP 摄像机发出 HTTP 请求的应用程序。每次我执行 HTTP 请求时,我都会收到一张在屏幕上绘制的图片。所有这些过程都是这样完成的:

  1. 我有一个每 500 毫秒调用一次的计时器。
  2. 计时器中的代码调用执行 http 请求的线程。

所以很有可能当定时器被调用时,http请求没有完全完成,这样就可以了。

问题是,有时出于未知原因,我收到异常“操作已超时”。所以我做了一个操作日志。我记录了 http 请求之前的时间和之后的时间。它总是在 300-400 毫秒左右。我还记录了异常情况,令我大吃一惊的是,记录的时间大约是 24 或 76 毫秒。我的超时设置为 5000 毫秒,所以它永远不会超时!

在我所有的测试中,我从来没有发现超过 800 毫秒的记录时间,而且这远远低于设置的超时时间。

是否还有其他原因可以解释“操作已超时”错误?我也尝试过,ServicePointManager.DefaultConnectionLimit = 200;但它不会改变任何东西。

非常感谢!

这是线程化的代码。ListTest 是记录器,然后将每一行打印到一个文件中。

StructTakePicture structTP = (StructTakePicture)structTakePicture;
ServicePointManager.DefaultConnectionLimit = 200; 
string strFileName = structTP.FolderGUID + "input" + GetNumeroPhoto(structTP.Cam.ID, structTP.NumPhoto) + ".jpg";
DateTime dateDebut = DateTime.Now;
try
{
    ListTest.Add(strFileName + " --- BEGIN : " + dateDebut.ToString()); 

    WebRequest WebRequestObject = HttpWebRequest.Create(String.Format("http://{0}/mjpg/snapshot.cgi?camera={1}", structTP.Cam.TotalIP, structTP.Cam.View));
    WebRequestObject.Timeout = 5000;
    WebRequestObject.Credentials = …
Run Code Online (Sandbox Code Playgroud)

c# http httpwebrequest ip-camera

1
推荐指数
1
解决办法
3万
查看次数

C# 中的 ONVIF api 捕获图像

我有一个 ONVIF 网络摄像机。

我想从相机捕获图像,以便可以处理该图像并将其保存到文件系统。

我发现有一个 onvif api,它提供了一种GetSnapshotUri应该为我提供图像快照的方法:

http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl

我设法通过添加服务引用来在 Visual Studio 中导入此 api:

在此输入图像描述

如何构建一个客户端以GetSnapshotUri从此服务进行调用?

c# wsdl visual-studio ip-camera onvif

1
推荐指数
1
解决办法
2万
查看次数