26595b58b9
The windows media foundation H264 encoders have been deprecated for over a year, and microsoft's media foundation AAC encoder has had a continued issue with occasional random audio glitches. The FFmpeg AAC encoder has had recent development, and is more than sufficient to be able to handle the task of encoding in terms of both quality and performance, so it's better just to use the FFmpeg encoder from here on out. As this plugin is no longer needed, for the next year or two it'll still be compiled and included, but as a blank plugin that does nothing. The reason why it's still being included as a blank no-operation plugin is to overwrite older versions of the plugin. That way if a user installs a newer OBS version over an older one, it won't load up the older win-mf plugin where the encoders still were enabled. This also fixes some rarely reported media foundation crashes that can happen on startup.
59 lines
1.0 KiB
CMake
59 lines
1.0 KiB
CMake
project(win-mf)
|
|
|
|
set(ENABLE_WINMF FALSE CACHE BOOL "Enables the now deprecated win-mf plugin")
|
|
|
|
configure_file(
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/mf-config.hpp.in"
|
|
"${CMAKE_CURRENT_BINARY_DIR}/mf-config.hpp")
|
|
|
|
set(win-mf_config_HEADERS
|
|
"${CMAKE_CURRENT_BINARY_DIR}/mf-config.hpp")
|
|
|
|
if(ENABLE_WINMF)
|
|
set(win-mf_SOURCES
|
|
mf-plugin.cpp
|
|
mf-aac.cpp
|
|
mf-aac-encoder.cpp
|
|
mf-common.cpp
|
|
mf-encoder-descriptor.cpp
|
|
mf-h264.cpp
|
|
mf-h264-encoder.cpp)
|
|
|
|
set(win-mf_HEADERS
|
|
mf-common.hpp
|
|
mf-encoder-descriptor.hpp
|
|
mf-aac-encoder.hpp
|
|
mf-h264-encoder.hpp)
|
|
|
|
set(win-mf_DEPS
|
|
d3d9
|
|
dxva2
|
|
uuid
|
|
mfplat
|
|
mfuuid
|
|
mf
|
|
wmcodecdspuuid)
|
|
else()
|
|
set(win-mf_SOURCES
|
|
mf-plugin.cpp)
|
|
endif()
|
|
|
|
add_library(win-mf MODULE
|
|
${win-mf_config_HEADERS}
|
|
${win-mf_SOURCES}
|
|
${win-mf_HEADERS})
|
|
|
|
target_link_libraries(win-mf
|
|
${win-mf_DEPS}
|
|
libobs)
|
|
|
|
target_include_directories(win-mf
|
|
PUBLIC
|
|
"$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>")
|
|
|
|
if(ENABLE_WINMF)
|
|
install_obs_plugin_with_data(win-mf data)
|
|
else()
|
|
install_obs_plugin(win-mf)
|
|
endif()
|