草庐IT

硬件网

全部标签

c++ - 指针如何允许硬件访问?

C中的指针非常强大并且看起来很高效。但是如何使用指针才能让您访问硬件呢?我的想法是将指针的值设置为等于硬件的关联对象,而不是通过指针对其进行操作。但是,如果您已经有足够的权限访问硬件的对象和属性以在其上使用指针,那么指针在哪里发挥作用呢?也许我想象出了一些错误?我在Windows7上运行。一个基本示例以及解释为什么需要指针来操作该硬件属性会很棒。 最佳答案 指针持有一个内存地址。并不是所有的内存寻址范围都单独指向RAM区域。内存地址有范围,一些范围映射到硬件寄存器。通过写入这些寄存器,我们可以访问硬件。当然,这也要看是什么操作系统,

c++ - 在现代 x86 硬件上编写比特流的最快方法

在x86/x86-64上编写比特流的最快方法是什么?(码字通过编写比特流,我指的是将可变比特长度符号连接到连续内存缓冲区中的过程。目前我有一个带有32位中间缓冲区的标准容器可以写入voidwrite_bits(SomeContainer&dst,unsignedint&buffer,unsignedint&bits_left_in_buffer,intcodeword,shortbits_to_write){if(bits_to_write>bits_left_in_buffer):0;dst.push_back(towrite);bits_left_in_buffer=32-full

windows - FFMPEG 帧到 DirectX 表面硬件加速

我使用ffmpeg函数解码h264帧并在windows平台上的窗口中显示。我使用的方法如下(来自FFMPEGFrametoDirectXSurface):AVFrame*frame;avcodec_decode_video(_ffcontext,frame,etc...);lockYourSurface();uint8_t*buf=getPointerToYourSurfacePixels();//CreateanAVPicturestructurewhichcontainsapointertotheRGBsurface.AVPicturepict;memset(&pict,0,siz

c++ - Windows7中的硬件加速缩放MFT

我正在搜索基于硬件加速(GPU)的视频缩放。我在以下线程中找到了广泛的讨论Howtousehardwarevideoscalers?和HardwareAcceleratedImageScalinginwindowsusingC++我尝试坚持使用基于MFT的缩放,因为我还在我的应用程序中使用了H.264编码器MFT。对于基于MFT的解决方案,我们有两种选择-1.VideoResizerDSP2.VideoProcessorMFT但这两种方法都使用了MF_SA_D3D_AWARE.如下所述:视频MFT具有属性MF_SA_D3D_AWARE.aspx可用于查询是否支持DirectX3D硬件加

Android 模拟器硬件渲染器问题

我在Eclipse上工作了一整天,并在Emulator上运行应用程序。但没想到有时模拟器会挂起并不断显示错误信息。Logcat在HardwareRenderer.java中显示问题然而,重启模拟器可以解决问题,但会浪费时间。那么,是否有可能避免或恢复此问题的方法。 最佳答案 你好,也许它并不完全适合你的问题......但是你可以尝试使用bluestacks而不是使用模拟器,它真的快速且易于运行......如果你使用bluestacks作为你的模拟器第一次启动启动bluestacks,然后启动eclipse或您正在使用的任何IDE。在

windows - 使用 NVENC 的 FFmpeg 硬件加速产生半绿输出视频

使用此处找到的FFmpeg构建:https://github.com/illuspas/ffmpeg-hw-win32gcc5.3.0--enable-nvencnvidia_video_sdk_6.0.1--enable-libmfxIntel(R)_Media_SDK_2016.0.1--enable-libfdk-aac0.1.4--enable-libspeex1.2rc1--enable-libx2641:148.20150725--enable-libopenh2641.5.0--enable-libx2651.8--enable-libopus1.1.2--enable-

windows - Windows 中的 lshw 等价物是什么,它可以像 lshw 在 Linux 上那样给我一个硬件树结构?

我需要如下所列的硬件信息,这些信息是在linux中使用lshw生成的。我需要一个没有GUI的Windows等价物,更像是一个代码或dll,它可以用来在同一个树状结构中提取信息。请注意Wmi不是合适的选项,因为它不会给我空插槽,而lshw会。test-pc3description:DesktopComputerversion:SystemVersionwidth:32bitscapabilities:smbios-2.5dmi-2.5smp-1.4smpconfiguration:boot=normalchassis=desktopcpus=2family=ToBeFilledByO.E

windows - 未连接硬件时卸载 Windows 驱动程序

我正在开发一个WindowsC++应用程序来驱动插入USB的电机Controller。该Controller依赖于Ftdibus驱动程序,并且在我的PC上运行良好。然而,在测试计算机上它曾经工作但是因为我一插入Controller就搞砸了Ftdi驱动程序,我得到了一个BSoD(提到Ftdibus)。我想清理驱动程序,但是:它们不会出现在Windows“卸载程序”中我无法在设备管理器中右键单击Controller并选择“卸载”,因为我无法插入Controller(BSoD)我试过nirsofttool有一个卸载设备的选项,但它不起作用我一头雾水,我怎么收拾这个烂摊子?PS:如果有人有关于

c - 如何直接与硬件交互?

我知道这必须是可能的,因为有一些程序可以控制硬件(例如键盘上的LED灯或CPU风扇),我想知道我必须做什么才能与之交互这个硬件。更具体地说,我想(作为一个学习项目)控制笔记本电脑(SonyVaioFlipSVF14N13CXB)的背光键盘何时亮起。我想知道每个字母/段的LED是否可以单独控制,如果可以的话,做一些只点亮被按下区域的编码会很酷(例如,如果每个键都有自己的LED,当我按下“W”键时,只有“W”键的LED会亮起)。我主要是作为一个学习项目来做这件事,但给出了一些例子,这样你就可以知道我想要什么。我希望你明白我在问什么。谢谢。 最佳答案

c++ - 生成基于硬件的 computerID

我有一个关于为许可目的生成特定计算机ID的问题。最好这个ID应该是基于硬件的,因此如果用户重新格式化,则不应更改。此外,用户更改生成ID的信息应该不容易(最好甚至不可能)。目前我只有两个组合的组件,CPUID标准和功能标志以及机器中第一个物理驱动器的几何形状和总大小。虽然这对大多数普通PC来说似乎都不错,但很多上网本都是使用完全相同的硬件制造的,因此在这种情况下,您会为许多机器获得相同的ID。你们能推荐一些我可以使用的其他硬件组件吗?我有两个要求:它不能使用WMI。它必须适用于多种情况(包括没有权限或权限很少的用户)。我想到了使用物理驱动器的序列号,但如果用户不在管理员模式下,那似乎很