问题标签 [ptp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - .Net MTP / PTP 包装器?
我正在编写一个业余项目来处理相机上的文件。以前我发现相机和 FolderBrowserDialog有问题。
我认为令人高兴的是相机正在使用 MTP 或 PTP(图片传输协议不是点对点)。
为了使与相机的接口更加无缝,我想使用 PTP 或 MTP 来访问相机。是否有任何用于 .Net 的 MTP / PTP 包装器可以推荐?如果可能的话,我很想避免自己编写或涉足非托管代码。
delphi - 如何枚举 MTP 和 PTP 设备
此答案解释了如何使用 WMI 按驱动器号查找附加的 USB 大容量存储设备,但我正在尝试查找附加的 MTP 或 PTP 设备的名称(或 UNC 路径),例如附加的相机或移动设备,它们没有安装驱动器号,这样我就可以爬取他们的目录来搜索图像。我怎样才能做到这一点?
c# - 使用 PTP/IP 将图像从相机传输到 PC
我正在尝试使用 C# 通过 wifi 将图像从 Canon EOS M6 复制到我的 PC,
我在此使用 PTP/IP,到目前为止,我能够连接到相机,查看 SD 卡并获取图像名称,但是当我尝试下载它们时,我得到了损坏的文件。
我认为它可能需要解码,因此我尝试使用 Base64 进行解码,但无法使其正常工作。
这里ns是NetworkStream ns
请在这件事上给予我帮助,
谢谢你。
arduino - Arduino:通过 USB 从相机捕捉事件
我正在开发一个需要通过 USB 与相机通信的 arduino 项目。当谈到 arduino 和 USB 时,每个人都知道有一个很棒的库:https ://github.com/felis/PTP_2.0
有很多关于如何使用它的例子,甚至还有如何与佳能相机通信的例子。甚至某种事件处理在 github 上也有它的示例!
但是很长一段时间我都没有完成它:在拍摄照片时捕捉事件!
我深入研究了EOSEventLab 示例和所有其他示例,在互联网上上下搜索,但找不到问题的答案。每个人似乎都在捕获后使用“延迟”来触发代码......我不能成为唯一需要这个的人。:)
应执行以下步骤:
- 设置相机参数和最大值 图片数量(完成)
- 拍照(完成)
- 当相机再次准备好时执行更多代码,即捕获图像
- 从 2. 重复直到最大。捕获的图像数量
如果需要,我可以提供一些代码,但主要是在 EOSEventLab 示例中找到的代码。
非常感谢您的帮助!
linux - 如何在运行 Linux 的 VM 上获得 /dev/ptp0 ptp 硬件时钟?
我正在尝试运行需要使用 ptp 获取硬件时间戳的软件。因此,我需要有/dev/ptp0可用。我在 VMWare 上运行 Linux/Ubuntu。
有没有办法让它在虚拟机上工作?
谢谢!
linux - 没有ptp时钟文件
我正在尝试在 arm 嵌入式目标设备上实现 linuxptp。得到源文件并编译它。当我尝试运行 ptp4l 命令时,我得到以下结果。
检查 /dev 目录,我发现没有 ptp 相关的时钟文件。在网上搜索,我知道有时我们必须使用 mknod 及其主要编号手动创建设备文件。在我的特定设备上,主要编号是 250。因此,我以以下方式创建了节点文件。
现在当我尝试运行 ptp4l 命令时,我仍然得到 ptp0 不可用的错误。接下来我尝试使用不同的名称制作节点文件并指定它。
使用 mknod 制作 ptp 时钟文件的源码:https ://sourceforge.net/p/linuxptp/mailman/message/32687321/
进一步搜索,建议不要这样做,获取udev制作ptp时钟文件。我不确定我将如何让 udev 为我做这件事。搜索它也不会产生任何有用的资源。谁能建议/指导我如何解决这个问题?
time - PTP(精确时间协议)硬件时间戳精度测量的差异
我们正在分析控制系统软件的 PTP 并测量 PTP 时钟同步的准确性,其中两台个人计算机的小型设置使其中一台作为主机,另一台作为从机。我们目前的设置非常粗糙,我们还没有大师。问题是我们的准确度数字(正如我们目前测量的那样,可能不正确)与 PTP 协议声称的标准数字不匹配,并且变化幅度为 10。
作为分析的一部分,我们正在尝试硬件和软件时间戳,并尝试测量两者的准确性。
我们正在使用 ptp4l 和 ph2sys v1.8 工具。我们当前的准确度测量是基于 ptp4l 进程报告的主从偏移量。(ptp4l 也报告路径延迟,我们目前不使用这些数字。这些数字在精度测量中是否有任何意义?)
在硬件时间戳中,我们从主设备获得 >1000 纳秒的偏移,这远远大于 PTP H/W 时间戳的 50 ns 左右的预期值。
对于软件时间戳,我们从主机获得了小于 100 μs 的预期偏移量。
设置和执行的详细信息:
主控: Dell Latitude E6220(Intel 82579LM 千兆以太网控制器)- CentOS7
从机: Dell Latitude E6320(Intel 82579LM 千兆以太网控制器)- CentOS7
网络: 1 GBPS 速度的以太网电缆
Ethtool 输出:
能力:
PTP 硬件时钟:0
硬件传输时间戳模式:
硬件接收过滤模式:
我们正在使用 ptp4l 进行软件时间戳,如下所示:
掌握:
奴隶:
ptp4l 和 phc2sys 用于硬件时间戳如下:
掌握:
(由于我们目前没有大师,我们使用 Master 的系统时钟作为 phc2sys 的主时钟)
奴隶:
(注意:我们使用默认配置运行上述命令。如果需要调整任何配置以提高准确性,请告诉我们?)
我们正在寻求帮助,以找出这种硬件时间戳准确性差异背后的原因以及我们的测试设置或测量方法中的任何错误。
谢谢,
多莉
windows - 如何在 Windows 便携设备中获取图片传输协议事件的参数?
我正在尝试使用 WPD 支持数码相机。我有工作请求/数据/响应通信(PTP 类型 1、2、3),但有事件问题(类型 4)。从事件中我需要一个命令代码(例如0xc102
)和最多三个整数参数。
我已经使用Microsoft 的 Portable Devices COM API Sample中的代码注册并接收事件,它很容易捕捉到事件的发生 -但我无法获取参数。命令代码不是直接提供的,而是作为(假定是随机的)CLSID 的一部分嵌入的。
我尝试IPortableDeviceValues
像解析响应一样使用事件对象,但是在尝试调用GetIPortableDevicePropVariantCollectionValue
API 时返回HRESULT
( ERROR_NOT_FOUND
) 0x80070490
。此调用用于从响应对象获取参数。
我试过(插入CPortableDeviceEventsCallback::OnEvent的代码):
我也试图从中获取WPD_EVENT_PARAMETER_OBJECT_PARENT_PERSISTENT_UNIQUE_ID
和WPD_EVENT_PARAMETER_OBJECT_CREATION_COOKIE
获取,但它们没有设置。
还有WPD_EVENT_ATTRIBUTE_OPTIONS
,WPD_EVENT_ATTRIBUTE_NAME
和WPD_EVENT_ATTRIBUTE_PARAMETERS
- 但我不知道如何找到它们,里面也没有任何有趣的东西。
或者,也许我所寻求的是IUNKNOWN
我在案件中忽略的switch
?但它可能是什么类型?
数据在那里,我可以在 Wireshark+USBPcap 和其他 PTP 应用程序中看到它。
networking - PTP 1588 时间戳
在PTP
1588中,带时间戳的数据包是指数据包的第一位PTP
离开设备引脚的时间?
这是否意味着如果必须在数据包中提供该时间,PTP
堆栈应该知道从PTP
堆栈中的给定阶段到设备引脚被该PTP
数据包占用多少时间?
这样时间可以在数据包中预先喂食吗?
synchronization - 多台电脑时间同步
我正在解决PC的不同时间同步。
使用 ntpq 检查 NTP 同步时间是否小于 1 毫秒。我想就如何在不使用 ntpq、ntdate 等的情况下验证这一点寻求帮助。
我使用“ssh”来查看屏幕上计算机之间的大致时间差异。对于我必须考虑的所有事情,我想知道一个稍微更准确的时间误差,例如 Netwick 传输延迟。
我在 uuntu 18.04 和 'ROS melodic' 中使用了几个 nvidia xavier