完美立方数等于另一个的两倍?——隐藏在等式后的数论奥秘
2026/10/13 15:54:59
04_Camera_D3D11_Preview没有复制摄像头采集代码,也没有引用外部摄像头仓库。
它复用同一AV_Atomic_Playground工程中02_Video_Capture提供的video_capture_core静态库。
02_Video_Capture └── video_capture_core ├── media_foundation_capture.cpp ├── media_foundation_capture.h └── video_frame.h 04_Camera_D3D11_Preview └── camera_d3d11_preview_sandbox ├── 采集线程 ├── LatestFrameMailbox └── D3D11Renderer ``` `04_Camera_D3D11_Preview/CMakeLists.txt` 通过以下关系复用采集核心: ```cmake target_link_libraries(camera_d3d11_preview_sandbox PRIVATE video_capture_core d3d11.lib dxgi.lib d3dcompiler.lib user32.lib ) ``` 因此,摄像头枚举、Media Foundation Source Reader 和 RGB32/BGRA 帧读取仍由 `MediaFoundationCapture` 负责;`04` 只负责线程调度和 GPU 渲染。 ## 2. 完整数据链 ```text 摄像头 -> Media Foundation Source Reader -> top-down、紧密排列的 BGRA VideoFrame -> LatestFrameMailbox(只保留最新一帧) -> D3D11Renderer::UploadFrame -> D3D11 Dynamic Texture -> Shader Resource View -> Pixel Shader -> SwapChain Back Buffer -> Present(1, 0)