Commit Graph
29 Commits
Author SHA1 Message Date
Razcoinaanda1batross 983b9611ac avi: add audio context check before sending packet 2026-02-07 07:50:57 +05:00
Alibek Omarov 0e75428d62 engine: avi: do not playback video if codec context is NULL 2026-02-05 08:26:43 +05:00
Alibek Omarov 821e5d7bd7 engine: client: avi: fix build with ffmpeg with disabled dynamic linking 2025-09-29 03:19:38 +05:00
Alibek Omarov eed1d26191 engine: client: avi: be more verbose about incompatible ffmpeg libs versions in build-time 2025-09-17 12:47:09 +05:00
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 MazovetskiyandAlibek Omarov 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