summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorliushuyu <liushuyu011@gmail.com>2021-12-13 02:28:52 +0100
committerliushuyu <liushuyu011@gmail.com>2021-12-14 06:31:19 +0100
commitdd72e4dce4641498bd7e73f09afd7d90961c435d (patch)
tree39ca50e569b17e002657484be046e0878b355bbc
parentvideo_core/codecs: skip decoders that use hw frames ... (diff)
downloadyuzu-dd72e4dce4641498bd7e73f09afd7d90961c435d.tar
yuzu-dd72e4dce4641498bd7e73f09afd7d90961c435d.tar.gz
yuzu-dd72e4dce4641498bd7e73f09afd7d90961c435d.tar.bz2
yuzu-dd72e4dce4641498bd7e73f09afd7d90961c435d.tar.lz
yuzu-dd72e4dce4641498bd7e73f09afd7d90961c435d.tar.xz
yuzu-dd72e4dce4641498bd7e73f09afd7d90961c435d.tar.zst
yuzu-dd72e4dce4641498bd7e73f09afd7d90961c435d.zip
-rwxr-xr-x.ci/scripts/windows/docker.sh5
-rw-r--r--externals/ffmpeg/CMakeLists.txt2
-rw-r--r--src/video_core/command_classes/codecs/codec.cpp3
3 files changed, 3 insertions, 7 deletions
diff --git a/.ci/scripts/windows/docker.sh b/.ci/scripts/windows/docker.sh
index 298421a1a..584b9b39f 100755
--- a/.ci/scripts/windows/docker.sh
+++ b/.ci/scripts/windows/docker.sh
@@ -41,12 +41,11 @@ for i in package/*.exe; do
done
pip3 install pefile
-python3 .ci/scripts/windows/scan_dll.py package/*.exe "package/"
-python3 .ci/scripts/windows/scan_dll.py package/imageformats/*.dll "package/"
+python3 .ci/scripts/windows/scan_dll.py package/*.exe package/imageformats/*.dll "package/"
# copy FFmpeg libraries
EXTERNALS_PATH="$(pwd)/build/externals"
-FFMPEG_DLL_PATH="$(find ${EXTERNALS_PATH} -maxdepth 1 -type d | grep ffmpeg)/ffmpeg/bin"
+FFMPEG_DLL_PATH="$(find "${EXTERNALS_PATH}" -maxdepth 1 -type d | grep 'ffmpeg-')/bin"
find ${FFMPEG_DLL_PATH} -type f -regex ".*\.dll" -exec cp -v {} package/ ';'
# copy libraries from yuzu.exe path
diff --git a/externals/ffmpeg/CMakeLists.txt b/externals/ffmpeg/CMakeLists.txt
index 63896edd5..7da89d2c5 100644
--- a/externals/ffmpeg/CMakeLists.txt
+++ b/externals/ffmpeg/CMakeLists.txt
@@ -17,7 +17,7 @@ if (NOT WIN32)
endif()
set(FFmpeg_PREFIX ${PROJECT_SOURCE_DIR}/externals/ffmpeg/ffmpeg)
- set(FFmpeg_BUILD_DIR ${PROJECT_BINARY_DIR}/externals/ffmpeg)
+ set(FFmpeg_BUILD_DIR ${PROJECT_BINARY_DIR}/externals/ffmpeg-build)
set(FFmpeg_MAKEFILE ${FFmpeg_BUILD_DIR}/Makefile)
make_directory(${FFmpeg_BUILD_DIR})
diff --git a/src/video_core/command_classes/codecs/codec.cpp b/src/video_core/command_classes/codecs/codec.cpp
index 439c47209..868b82f9b 100644
--- a/src/video_core/command_classes/codecs/codec.cpp
+++ b/src/video_core/command_classes/codecs/codec.cpp
@@ -257,9 +257,6 @@ void Codec::Decode() {
final_frame->format = PREFERRED_GPU_FMT;
const int ret = av_hwframe_transfer_data(final_frame.get(), initial_frame.get(), 0);
ASSERT_MSG(!ret, "av_hwframe_transfer_data error {}", ret);
- // null the hw frame context to prevent the buffer from being deleted
- // and leaving a dangling reference in the av_codec_ctx
- initial_frame->hw_frames_ctx = nullptr;
} else {
final_frame = std::move(initial_frame);
}