Commit Graph

25 Commits

Author SHA1 Message Date
Alibek Omarov
7564e3c61f engine: client: add support for building with FFmpeg linked in runtime 2025-07-13 04:39:44 +05:00
Alibek Omarov
004af02e99 engine: avi: comment out debug messages 2025-01-29 11:13:29 +03:00
Alibek Omarov
32def35408 engine: avi: remove stub file 2025-01-23 18:56:44 +03:00
Alibek Omarov
952ccb1247 engine: avi: very dumb pause 2025-01-23 18:55:48 +03:00
Alibek Omarov
c8bf7e5630 engine: avi: get rid of stubs file, temporarily put these stubs into avi_ffmpeg.c 2024-12-13 03:04:32 +03:00
Alibek Omarov
43ba2e747b engine: avi: mention SDL3 and FTEQW developers which ffmpeg integrations in their projects helped me to understand the ffmpeg API 2024-12-13 03:04:32 +03:00
Alibek Omarov
eefb823ee2 engine: client: remove legacy movie audio track streaming functions 2024-12-13 03:04:32 +03:00
Alibek Omarov
16fe6b1b1a engine: client: avi: remove VFW-based player 2024-12-13 03:04:32 +03:00
Alibek Omarov
4275829bd5 engine: client: partially rework how AVI playback works in Xash. Add ffmpeg-based player.
This intentionally will not build without --enable-ffmpeg for now.

We add new functions to the RenderAPI called AVI_Think and AVI_SetParm. Game
developer is supposed to call AVI_Think each frame and set video playback
parameters through AVI_SetParm function.

What's tested:
* Intro cinematics.
* Looping videos.
* Playing back an hour long video.
* API extension (PrimeXT's avi branch at https://github.com/a1batross/PrimeXT).

What's broken:
* There is no way to seek a video file, only rewind to the start.
2024-12-13 03:04:32 +03:00
Alibek Omarov
1884f0a3ce engine: client: avi: add new macro XASH_AVI and corresponding backend select macros (AVI_NULL and AVI_FFMPEG) 2024-12-09 00:27:40 +03:00
Alibek Omarov
ec2951cf45 engine: add size argument to COM_Default/ReplaceExtension calls 2023-04-26 05:20:45 +03:00
Alibek Omarov
3614cfa878 engine: client: avi: remove unused function 2023-04-03 03:55:57 +03:00
Alibek Omarov
6c62136f11 engine: client: avi: convert filename to wide characters before passing it into VFW API 2023-03-28 22:42:16 +03:00
Alibek Omarov
f34b35be5a engine: client: avi: re-attribute AVI support code by restoring original author copyright 2023-03-28 22:42:16 +03:00
Gleb Mazovetskiy
5e0a0765ce Trim all trailing whitespace
The `.editorconfig` file in this repo is configured to trim all trailing
whitespace regardless of whether the line is modified.

Trims all trailing whitespace in the repository to make the codebase easier
to work with in editors that respect `.editorconfig`.

`git blame` becomes less useful on these lines but it already isn't very useful.

Commands:

```
find . -type f -name '*.h' -exec sed --in-place 's/[[:space:]]\+$//' {} \+
find . -type f -name '*.c' -exec sed --in-place 's/[[:space:]]\+$//' {} \+
```
2021-01-04 20:55:10 +03:00
Alibek Omarov
c39d42cc62 avi: replace longs by ints 2020-04-19 13:02:51 +03:00
Alibek Omarov
9421457b3a engine: big refactoring commit, instead of using platform-specific platform-specific macros, use appropriate macros set by public/build.h 2019-11-24 03:52:08 +03:00
Alibek Omarov
b797e0af1a Merge 4483 update 2019-05-25 02:44:24 +03:00
Alibek Omarov
ab7a67464b engine: fix long<->int conversion UBs 2019-05-02 19:05:09 +03:00
Alibek Omarov
99bd7c81da ref: render code moved out of engine, doesn't compile, first API prototype 2019-02-18 21:25:26 +03:00
Alibek Omarov
b9945d62a3 Apply 4312 update 2018-11-27 16:15:24 +03:00
Alibek Omarov
a03aa3ddb3 Merge 4281 update 2018-10-28 00:39:29 +03:00
mittorn
491188a0f3 Merge branch 'original' 2018-10-04 14:27:14 +07:00
Alibek Omarov
f26ac52102 Merge 4140 update 2018-06-11 14:04:50 +03:00
Alibek Omarov
40094f2867 Move client-only parts to client 2018-04-18 18:10:32 +03:00