diff --git a/Core/GameEngine/CMakeLists.txt b/Core/GameEngine/CMakeLists.txt index 689e0004307..0c91e47cc5d 100644 --- a/Core/GameEngine/CMakeLists.txt +++ b/Core/GameEngine/CMakeLists.txt @@ -224,11 +224,11 @@ set(GAMEENGINE_SRC # Include/GameClient/Statistics.h # Include/GameClient/TerrainRoads.h # Include/GameClient/TerrainVisual.h -# Include/GameClient/VideoPlayer.h + Include/GameClient/VideoPlayer.h # Include/GameClient/View.h # Include/GameClient/Water.h # Include/GameClient/WindowLayout.h -# Include/GameClient/WindowVideoManager.h + Include/GameClient/WindowVideoManager.h # Include/GameClient/WindowXlat.h # Include/GameClient/WinInstanceData.h # Include/GameLogic/AI.h @@ -597,7 +597,7 @@ set(GAMEENGINE_SRC # Source/Common/INI/INITerrainBridge.cpp # Source/Common/INI/INITerrainRoad.cpp # Source/Common/INI/INIUpgrade.cpp -# Source/Common/INI/INIVideo.cpp + Source/Common/INI/INIVideo.cpp # Source/Common/INI/INIWater.cpp # Source/Common/INI/INIWeapon.cpp # Source/Common/INI/INIWebpageURL.cpp @@ -791,7 +791,7 @@ set(GAMEENGINE_SRC # Source/GameClient/GUI/Shell/Shell.cpp # Source/GameClient/GUI/Shell/ShellMenuScheme.cpp # Source/GameClient/GUI/WindowLayout.cpp -# Source/GameClient/GUI/WindowVideoManager.cpp + Source/GameClient/GUI/WindowVideoManager.cpp # Source/GameClient/GUI/WinInstanceData.cpp # Source/GameClient/InGameUI.cpp # Source/GameClient/Input/Keyboard.cpp @@ -823,8 +823,8 @@ set(GAMEENGINE_SRC # Source/GameClient/System/Smudge.cpp # Source/GameClient/Terrain/TerrainRoads.cpp # Source/GameClient/Terrain/TerrainVisual.cpp -# Source/GameClient/VideoPlayer.cpp -# Source/GameClient/VideoStream.cpp + Source/GameClient/VideoPlayer.cpp + Source/GameClient/VideoStream.cpp # Source/GameClient/View.cpp # Source/GameClient/Water.cpp # Source/GameLogic/AI/AI.cpp diff --git a/GeneralsMD/Code/GameEngine/Include/GameClient/VideoPlayer.h b/Core/GameEngine/Include/GameClient/VideoPlayer.h similarity index 100% rename from GeneralsMD/Code/GameEngine/Include/GameClient/VideoPlayer.h rename to Core/GameEngine/Include/GameClient/VideoPlayer.h diff --git a/GeneralsMD/Code/GameEngine/Include/GameClient/WindowVideoManager.h b/Core/GameEngine/Include/GameClient/WindowVideoManager.h similarity index 100% rename from GeneralsMD/Code/GameEngine/Include/GameClient/WindowVideoManager.h rename to Core/GameEngine/Include/GameClient/WindowVideoManager.h diff --git a/GeneralsMD/Code/GameEngine/Source/Common/INI/INIVideo.cpp b/Core/GameEngine/Source/Common/INI/INIVideo.cpp similarity index 100% rename from GeneralsMD/Code/GameEngine/Source/Common/INI/INIVideo.cpp rename to Core/GameEngine/Source/Common/INI/INIVideo.cpp diff --git a/GeneralsMD/Code/GameEngine/Source/GameClient/GUI/WindowVideoManager.cpp b/Core/GameEngine/Source/GameClient/GUI/WindowVideoManager.cpp similarity index 100% rename from GeneralsMD/Code/GameEngine/Source/GameClient/GUI/WindowVideoManager.cpp rename to Core/GameEngine/Source/GameClient/GUI/WindowVideoManager.cpp diff --git a/GeneralsMD/Code/GameEngine/Source/GameClient/VideoPlayer.cpp b/Core/GameEngine/Source/GameClient/VideoPlayer.cpp similarity index 100% rename from GeneralsMD/Code/GameEngine/Source/GameClient/VideoPlayer.cpp rename to Core/GameEngine/Source/GameClient/VideoPlayer.cpp diff --git a/GeneralsMD/Code/GameEngine/Source/GameClient/VideoStream.cpp b/Core/GameEngine/Source/GameClient/VideoStream.cpp similarity index 100% rename from GeneralsMD/Code/GameEngine/Source/GameClient/VideoStream.cpp rename to Core/GameEngine/Source/GameClient/VideoStream.cpp diff --git a/Core/GameEngineDevice/CMakeLists.txt b/Core/GameEngineDevice/CMakeLists.txt index 9996b8a8eac..404c1eb60ec 100644 --- a/Core/GameEngineDevice/CMakeLists.txt +++ b/Core/GameEngineDevice/CMakeLists.txt @@ -1,6 +1,6 @@ set(GAMEENGINEDEVICE_SRC Include/MilesAudioDevice/MilesAudioManager.h -# Include/VideoDevice/Bink/BinkVideoPlayer.h + Include/VideoDevice/Bink/BinkVideoPlayer.h # Include/W3DDevice/Common/W3DConvert.h # Include/W3DDevice/Common/W3DFunctionLexicon.h # Include/W3DDevice/Common/W3DModuleFactory.h @@ -70,7 +70,7 @@ set(GAMEENGINEDEVICE_SRC # Include/W3DDevice/GameClient/W3DTerrainTracks.h # Include/W3DDevice/GameClient/W3DTerrainVisual.h # Include/W3DDevice/GameClient/W3DTreeBuffer.h -# Include/W3DDevice/GameClient/W3DVideobuffer.h + Include/W3DDevice/GameClient/W3DVideoBuffer.h # Include/W3DDevice/GameClient/W3DView.h # Include/W3DDevice/GameClient/W3DVolumetricShadow.h # Include/W3DDevice/GameClient/W3DWater.h @@ -91,7 +91,7 @@ set(GAMEENGINEDEVICE_SRC # Include/Win32Device/GameClient/Win32DIMouse.h # Include/Win32Device/GameClient/Win32Mouse.h Source/MilesAudioDevice/MilesAudioManager.cpp -# Source/VideoDevice/Bink/BinkVideoPlayer.cpp + Source/VideoDevice/Bink/BinkVideoPlayer.cpp # Source/W3DDevice/Common/System/W3DFunctionLexicon.cpp # Source/W3DDevice/Common/System/W3DRadar.cpp # Source/W3DDevice/Common/Thing/W3DModuleFactory.cpp @@ -172,7 +172,7 @@ set(GAMEENGINEDEVICE_SRC # Source/W3DDevice/GameClient/W3DTerrainTracks.cpp # Source/W3DDevice/GameClient/W3DTerrainVisual.cpp # Source/W3DDevice/GameClient/W3DTreeBuffer.cpp -# Source/W3DDevice/GameClient/W3DVideoBuffer.cpp + Source/W3DDevice/GameClient/W3DVideoBuffer.cpp # Source/W3DDevice/GameClient/W3DView.cpp # Source/W3DDevice/GameClient/W3dWaypointBuffer.cpp # Source/W3DDevice/GameClient/W3DWebBrowser.cpp @@ -229,20 +229,19 @@ target_link_libraries(corei_gameenginedevice_public INTERFACE milesstub ) -#if(RTS_BUILD_OPTION_FFMPEG) -# find_package(FFMPEG REQUIRED) -# -# if(FFMPEG_FOUND) -# target_sources(z_gameenginedevice PRIVATE -# Include/VideoDevice/FFmpeg/FFmpegFile.h -# Include/VideoDevice/FFmpeg/FFmpegVideoPlayer.h -# Source/VideoDevice/FFmpeg/FFmpegFile.cpp -# Source/VideoDevice/FFmpeg/FFmpegVideoPlayer.cpp -# ) -# -# target_include_directories(z_gameenginedevice PRIVATE ${FFMPEG_INCLUDE_DIRS}) -# target_link_directories(z_gameenginedevice PRIVATE ${FFMPEG_LIBRARY_DIRS}) -# target_link_libraries(z_gameenginedevice PRIVATE ${FFMPEG_LIBRARIES}) -# target_compile_definitions(z_gameenginedevice PUBLIC RTS_HAS_FFMPEG) -# endif() -#endif() +if(RTS_BUILD_OPTION_FFMPEG) + find_package(FFMPEG REQUIRED) + + if(FFMPEG_FOUND) + target_sources(corei_gameenginedevice_private INTERFACE + Include/VideoDevice/FFmpeg/FFmpegFile.h + Include/VideoDevice/FFmpeg/FFmpegVideoPlayer.h + Source/VideoDevice/FFmpeg/FFmpegFile.cpp + Source/VideoDevice/FFmpeg/FFmpegVideoPlayer.cpp + ) + target_include_directories(corei_gameenginedevice_private INTERFACE ${FFMPEG_INCLUDE_DIRS}) + target_link_directories(corei_gameenginedevice_private INTERFACE ${FFMPEG_LIBRARY_DIRS}) + target_link_libraries(corei_gameenginedevice_private INTERFACE ${FFMPEG_LIBRARIES}) + target_compile_definitions(corei_gameenginedevice_public INTERFACE RTS_HAS_FFMPEG) + endif() +endif() diff --git a/GeneralsMD/Code/GameEngineDevice/Include/VideoDevice/Bink/BinkVideoPlayer.h b/Core/GameEngineDevice/Include/VideoDevice/Bink/BinkVideoPlayer.h similarity index 100% rename from GeneralsMD/Code/GameEngineDevice/Include/VideoDevice/Bink/BinkVideoPlayer.h rename to Core/GameEngineDevice/Include/VideoDevice/Bink/BinkVideoPlayer.h diff --git a/GeneralsMD/Code/GameEngineDevice/Include/VideoDevice/FFmpeg/FFmpegFile.h b/Core/GameEngineDevice/Include/VideoDevice/FFmpeg/FFmpegFile.h similarity index 100% rename from GeneralsMD/Code/GameEngineDevice/Include/VideoDevice/FFmpeg/FFmpegFile.h rename to Core/GameEngineDevice/Include/VideoDevice/FFmpeg/FFmpegFile.h diff --git a/GeneralsMD/Code/GameEngineDevice/Include/VideoDevice/FFmpeg/FFmpegVideoPlayer.h b/Core/GameEngineDevice/Include/VideoDevice/FFmpeg/FFmpegVideoPlayer.h similarity index 100% rename from GeneralsMD/Code/GameEngineDevice/Include/VideoDevice/FFmpeg/FFmpegVideoPlayer.h rename to Core/GameEngineDevice/Include/VideoDevice/FFmpeg/FFmpegVideoPlayer.h diff --git a/GeneralsMD/Code/GameEngineDevice/Include/W3DDevice/GameClient/W3DVideobuffer.h b/Core/GameEngineDevice/Include/W3DDevice/GameClient/W3DVideoBuffer.h similarity index 100% rename from GeneralsMD/Code/GameEngineDevice/Include/W3DDevice/GameClient/W3DVideobuffer.h rename to Core/GameEngineDevice/Include/W3DDevice/GameClient/W3DVideoBuffer.h diff --git a/GeneralsMD/Code/GameEngineDevice/Source/VideoDevice/Bink/BinkVideoPlayer.cpp b/Core/GameEngineDevice/Source/VideoDevice/Bink/BinkVideoPlayer.cpp similarity index 99% rename from GeneralsMD/Code/GameEngineDevice/Source/VideoDevice/Bink/BinkVideoPlayer.cpp rename to Core/GameEngineDevice/Source/VideoDevice/Bink/BinkVideoPlayer.cpp index 9cd7f34dee7..819d1e1dbe4 100644 --- a/GeneralsMD/Code/GameEngineDevice/Source/VideoDevice/Bink/BinkVideoPlayer.cpp +++ b/Core/GameEngineDevice/Source/VideoDevice/Bink/BinkVideoPlayer.cpp @@ -225,7 +225,7 @@ VideoStreamInterface* BinkVideoPlayer::open( AsciiString movieTitle ) const Video* pVideo = getVideo(movieTitle); if (pVideo) { DEBUG_LOG(("BinkVideoPlayer::createStream() - About to open bink file")); - + if (TheGlobalData->m_modDir.isNotEmpty()) { char filePath[ _MAX_PATH ]; diff --git a/GeneralsMD/Code/GameEngineDevice/Source/VideoDevice/FFmpeg/FFmpegFile.cpp b/Core/GameEngineDevice/Source/VideoDevice/FFmpeg/FFmpegFile.cpp similarity index 100% rename from GeneralsMD/Code/GameEngineDevice/Source/VideoDevice/FFmpeg/FFmpegFile.cpp rename to Core/GameEngineDevice/Source/VideoDevice/FFmpeg/FFmpegFile.cpp diff --git a/GeneralsMD/Code/GameEngineDevice/Source/VideoDevice/FFmpeg/FFmpegVideoPlayer.cpp b/Core/GameEngineDevice/Source/VideoDevice/FFmpeg/FFmpegVideoPlayer.cpp similarity index 100% rename from GeneralsMD/Code/GameEngineDevice/Source/VideoDevice/FFmpeg/FFmpegVideoPlayer.cpp rename to Core/GameEngineDevice/Source/VideoDevice/FFmpeg/FFmpegVideoPlayer.cpp diff --git a/GeneralsMD/Code/GameEngineDevice/Source/W3DDevice/GameClient/W3DVideoBuffer.cpp b/Core/GameEngineDevice/Source/W3DDevice/GameClient/W3DVideoBuffer.cpp similarity index 99% rename from GeneralsMD/Code/GameEngineDevice/Source/W3DDevice/GameClient/W3DVideoBuffer.cpp rename to Core/GameEngineDevice/Source/W3DDevice/GameClient/W3DVideoBuffer.cpp index 8ff77192ef2..e71dbf9ef75 100644 --- a/GeneralsMD/Code/GameEngineDevice/Source/W3DDevice/GameClient/W3DVideoBuffer.cpp +++ b/Core/GameEngineDevice/Source/W3DDevice/GameClient/W3DVideoBuffer.cpp @@ -48,7 +48,7 @@ #include "Common/GameMemory.h" #include "WW3D2/texture.h" #include "WW3D2/textureloader.h" -#include "W3DDevice/GameClient/W3DVideobuffer.h" +#include "W3DDevice/GameClient/W3DVideoBuffer.h" //---------------------------------------------------------------------------- // Externals diff --git a/Generals/Code/GameEngine/CMakeLists.txt b/Generals/Code/GameEngine/CMakeLists.txt index 1bb7173ff51..41fd59b68b8 100644 --- a/Generals/Code/GameEngine/CMakeLists.txt +++ b/Generals/Code/GameEngine/CMakeLists.txt @@ -213,11 +213,11 @@ set(GAMEENGINE_SRC Include/GameClient/Statistics.h Include/GameClient/TerrainRoads.h Include/GameClient/TerrainVisual.h - Include/GameClient/VideoPlayer.h +# Include/GameClient/VideoPlayer.h Include/GameClient/View.h Include/GameClient/Water.h Include/GameClient/WindowLayout.h - Include/GameClient/WindowVideoManager.h +# Include/GameClient/WindowVideoManager.h Include/GameClient/WindowXlat.h Include/GameClient/WinInstanceData.h Include/GameLogic/AI.h @@ -556,7 +556,7 @@ set(GAMEENGINE_SRC Source/Common/INI/INITerrainBridge.cpp Source/Common/INI/INITerrainRoad.cpp Source/Common/INI/INIUpgrade.cpp - Source/Common/INI/INIVideo.cpp +# Source/Common/INI/INIVideo.cpp Source/Common/INI/INIWater.cpp Source/Common/INI/INIWeapon.cpp Source/Common/INI/INIWebpageURL.cpp @@ -746,7 +746,7 @@ set(GAMEENGINE_SRC Source/GameClient/GUI/Shell/Shell.cpp Source/GameClient/GUI/Shell/ShellMenuScheme.cpp Source/GameClient/GUI/WindowLayout.cpp - Source/GameClient/GUI/WindowVideoManager.cpp +# Source/GameClient/GUI/WindowVideoManager.cpp Source/GameClient/GUI/WinInstanceData.cpp Source/GameClient/InGameUI.cpp Source/GameClient/Input/Keyboard.cpp @@ -775,7 +775,7 @@ set(GAMEENGINE_SRC Source/GameClient/System/RayEffect.cpp Source/GameClient/Terrain/TerrainRoads.cpp Source/GameClient/Terrain/TerrainVisual.cpp - Source/GameClient/VideoPlayer.cpp +# Source/GameClient/VideoPlayer.cpp Source/GameClient/View.cpp Source/GameClient/Water.cpp Source/GameLogic/AI/AI.cpp diff --git a/Generals/Code/GameEngine/Include/GameClient/VideoPlayer.h b/Generals/Code/GameEngine/Include/GameClient/VideoPlayer.h deleted file mode 100644 index 1d9a365a133..00000000000 --- a/Generals/Code/GameEngine/Include/GameClient/VideoPlayer.h +++ /dev/null @@ -1,317 +0,0 @@ -/* -** Command & Conquer Generals(tm) -** Copyright 2025 Electronic Arts Inc. -** -** This program is free software: you can redistribute it and/or modify -** it under the terms of the GNU General Public License as published by -** the Free Software Foundation, either version 3 of the License, or -** (at your option) any later version. -** -** This program is distributed in the hope that it will be useful, -** but WITHOUT ANY WARRANTY; without even the implied warranty of -** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -** GNU General Public License for more details. -** -** You should have received a copy of the GNU General Public License -** along with this program. If not, see . -*/ - -//////////////////////////////////////////////////////////////////////////////// -// // -// (c) 2001-2003 Electronic Arts Inc. // -// // -//////////////////////////////////////////////////////////////////////////////// - -//---------------------------------------------------------------------------- -// -// Westwood Studios Pacific. -// -// Confidential Information -// Copyright (C) 2001 - All Rights Reserved -// -//---------------------------------------------------------------------------- -// -// Project: Generals -// -// File name: GameClient/VideoPlayer.h -// -// Created: 10/22/01 -// -//---------------------------------------------------------------------------- - -#pragma once - -#ifndef __GAMECLIENT_VIDEOPLAYER_H_ -#define __GAMECLIENT_VIDEOPLAYER_H_ - - -//---------------------------------------------------------------------------- -// Includes -//---------------------------------------------------------------------------- - -#include -#include "WWMath/rect.h" -#include "Common/SubsystemInterface.h" -#include "Common/AsciiString.h" -#include "Common/INI.h" -#include "Common/STLTypedefs.h" - -//---------------------------------------------------------------------------- -// Forward References -//---------------------------------------------------------------------------- - -struct Video; -class VideoPlayer; - -//---------------------------------------------------------------------------- -// Type Defines -//---------------------------------------------------------------------------- -typedef std::vector