|
FFmpeg
|
#include "vsrc_gfxcapture_winrt.hpp"#include "vsrc_gfxcapture_shader.h"#include <dwmapi.h>#include <d3d11.h>#include <d3dcompiler.h>#include <dispatcherqueue.h>#include <windows.foundation.h>#include <windows.graphics.capture.h>#include <windows.graphics.capture.interop.h>#include <windows.graphics.directx.direct3d11.h>#include "libavutil/avassert.h"#include "libavutil/internal.h"#include "libavutil/mem.h"#include "libavutil/opt.h"#include "libavutil/time.h"#include "libavutil/pixdesc.h"#include "libavutil/hwcontext.h"#include "libavutil/hwcontext_d3d11va.h"#include "avfilter.h"#include "filters.h"#include "video.h"#include "vsrc_gfxcapture.h"#include <cinttypes>#include <condition_variable>#include <cwchar>#include <memory>#include <mutex>#include <regex>#include <string>#include <thread>#include <type_traits>Go to the source code of this file.
Data Structures | |
| struct | GfxCaptureFunctions |
| struct | GfxCaptureContextWgc |
| struct | GfxCaptureContextD3D |
| struct | GfxCaptureContextCpp |
Macros | |
| #define | TIMESPAN_RES 10000000 |
| #define | TIMESPAN_RES64 INT64_C(10000000) |
| #define | CAPTURE_POOL_SIZE 2 |
| #define | CCTX(ctx) static_cast<GfxCaptureContext*>(ctx) |
| #define | CHECK_HR(fcall, action) |
| #define | CHECK_HR_RET(...) CHECK_HR((__VA_ARGS__), return AVERROR_EXTERNAL) |
| #define | CHECK_HR_FAIL(...) CHECK_HR((__VA_ARGS__), ret = AVERROR_EXTERNAL; goto fail) |
| #define | CHECK_HR_LOG(...) CHECK_HR((__VA_ARGS__), (void)0) |
| #define | LOAD_DLL(handle, name) |
| #define | LOAD_FUNC(handle, name) |
Enumerations | |
| enum | { WM_WGC_THREAD_SHUTDOWN = WM_APP + 1 } |
| #define TIMESPAN_RES 10000000 |
Definition at line 70 of file vsrc_gfxcapture_winrt.cpp.
| #define TIMESPAN_RES64 INT64_C(10000000) |
Definition at line 71 of file vsrc_gfxcapture_winrt.cpp.
| #define CAPTURE_POOL_SIZE 2 |
Definition at line 73 of file vsrc_gfxcapture_winrt.cpp.
| #define CCTX | ( | ctx | ) | static_cast<GfxCaptureContext*>(ctx) |
Definition at line 79 of file vsrc_gfxcapture_winrt.cpp.
| #define CHECK_HR | ( | fcall, | |
| action | |||
| ) |
Definition at line 181 of file vsrc_gfxcapture_winrt.cpp.
| #define CHECK_HR_RET | ( | ... | ) | CHECK_HR((__VA_ARGS__), return AVERROR_EXTERNAL) |
Definition at line 189 of file vsrc_gfxcapture_winrt.cpp.
| #define CHECK_HR_FAIL | ( | ... | ) | CHECK_HR((__VA_ARGS__), ret = AVERROR_EXTERNAL; goto fail) |
Definition at line 190 of file vsrc_gfxcapture_winrt.cpp.
| #define CHECK_HR_LOG | ( | ... | ) | CHECK_HR((__VA_ARGS__), (void)0) |
Definition at line 191 of file vsrc_gfxcapture_winrt.cpp.
| anonymous enum |
| Enumerator | |
|---|---|
| WM_WGC_THREAD_SHUTDOWN | |
Definition at line 75 of file vsrc_gfxcapture_winrt.cpp.
|
static |
Definition at line 170 of file vsrc_gfxcapture_winrt.cpp.
|
static |
Definition at line 198 of file vsrc_gfxcapture_winrt.cpp.
|
static |
Definition at line 206 of file vsrc_gfxcapture_winrt.cpp.
|
staticnoexcept |
Definition at line 214 of file vsrc_gfxcapture_winrt.cpp.
Referenced by wgc_thread_uninit(), and wgc_thread_worker().
|
static |
Definition at line 254 of file vsrc_gfxcapture_winrt.cpp.
Referenced by wgc_setup_gfxcapture_session(), and wgc_try_get_next_frame().
|
static |
Definition at line 324 of file vsrc_gfxcapture_winrt.cpp.
Referenced by wgc_setup_gfxcapture_capture().
|
static |
Definition at line 405 of file vsrc_gfxcapture_winrt.cpp.
Referenced by wgc_thread_init().
|
static |
Definition at line 445 of file vsrc_gfxcapture_winrt.cpp.
Referenced by process_frame_if_exists().
|
static |
Definition at line 479 of file vsrc_gfxcapture_winrt.cpp.
Referenced by wgc_thread_init().
|
staticnoexcept |
Definition at line 500 of file vsrc_gfxcapture_winrt.cpp.
Referenced by wgc_thread_entry(), and wgc_thread_init().
|
static |
Definition at line 511 of file vsrc_gfxcapture_winrt.cpp.
Referenced by wgc_thread_entry().
|
static |
Definition at line 548 of file vsrc_gfxcapture_winrt.cpp.
Referenced by wgc_thread_entry().
|
staticnoexcept |
Definition at line 598 of file vsrc_gfxcapture_winrt.cpp.
Referenced by start_wgc_thread().
|
static |
Definition at line 655 of file vsrc_gfxcapture_winrt.cpp.
Referenced by gfxcapture_uninit(), and setup_gfxcapture_capture().
|
static |
Definition at line 674 of file vsrc_gfxcapture_winrt.cpp.
Referenced by setup_gfxcapture_capture().
|
static |
Definition at line 705 of file vsrc_gfxcapture_winrt.cpp.
Referenced by process_frame_if_exists().
|
static |
Definition at line 774 of file vsrc_gfxcapture_winrt.cpp.
Referenced by find_capture_source().
|
static |
Definition at line 801 of file vsrc_gfxcapture_winrt.cpp.
Referenced by find_capture_source(), and get_window_exe_name().
|
static |
Definition at line 816 of file vsrc_gfxcapture_winrt.cpp.
Referenced by find_capture_source().
|
static |
Definition at line 856 of file vsrc_gfxcapture_winrt.cpp.
Referenced by setup_gfxcapture_capture().
|
static |
Definition at line 970 of file vsrc_gfxcapture_winrt.cpp.
Referenced by ff_gfxcapture_uninit(), and gfxcapture_init().
|
static |
Definition at line 990 of file vsrc_gfxcapture_winrt.cpp.
|
static |
Definition at line 994 of file vsrc_gfxcapture_winrt.cpp.
Referenced by gfxcapture_init().
|
static |
Definition at line 1046 of file vsrc_gfxcapture_winrt.cpp.
Referenced by ff_gfxcapture_init().
|
static |
Definition at line 1067 of file vsrc_gfxcapture_winrt.cpp.
Referenced by gfxcapture_config_props().
|
static |
Definition at line 1100 of file vsrc_gfxcapture_winrt.cpp.
Referenced by gfxcapture_config_props().
|
static |
Definition at line 1142 of file vsrc_gfxcapture_winrt.cpp.
Referenced by gfxcapture_config_props().
|
static |
Definition at line 1197 of file vsrc_gfxcapture_winrt.cpp.
Referenced by ff_gfxcapture_config_props().
|
static |
Definition at line 1270 of file vsrc_gfxcapture_winrt.cpp.
Referenced by process_frame_if_exists().
|
static |
Definition at line 1396 of file vsrc_gfxcapture_winrt.cpp.
Referenced by gfxcapture_activate().
|
static |
Definition at line 1461 of file vsrc_gfxcapture_winrt.cpp.
Referenced by ff_gfxcapture_activate().
|
noexcept |
Definition at line 1500 of file vsrc_gfxcapture_winrt.cpp.
|
noexcept |
Definition at line 1511 of file vsrc_gfxcapture_winrt.cpp.
|
noexcept |
Definition at line 1526 of file vsrc_gfxcapture_winrt.cpp.
|
noexcept |
Definition at line 1541 of file vsrc_gfxcapture_winrt.cpp.
1.8.17