Commit Graph
26 Commits
Author SHA1 Message Date
Brandon W a4124aafe4 Unify practice mode song navigation with edit mode. 2025-05-09 10:09:05 -07:00
Brandon W 2bd541a927 Convert more smart pointers in the MovieTexture class. 2025-04-29 21:42:13 -07:00
Brandon W a4978f4476 Convert the MovieDecoder used by the MovieTexture to a unique_ptr. 2025-04-29 21:42:13 -07:00
Brandon W 8dcb01f3ee Remove COMPARE and COMPARE_FLOAT macros for equivalent if statements.
This is both for clarity, and to conform with the google c++ style
guide.

https://google.github.io/styleguide/cppguide.html#Preprocessor_Macros
2025-04-29 21:37:45 -07:00
Brandon W 448a2be7cd Add alias_ member to the Actor class. 2025-04-11 09:04:36 -07:00
Brandon W 5c2d745302 Fix looping logic when the final frame can't display.
Additionally, adjust the destruction order of the movie texture and
improve logging.
2025-04-03 23:00:06 -07:00
Brandon W f4e61675d5 PLAYER_1->main_player_ when referencing player state in editmode. 2025-04-03 22:47:38 -07:00
Brandon W 9789ef9697 Give actors the ability to undo the rate change triggered by holding
tilde or tab.

This is gated by a new boolean, `tab_tilde_scaling_enabled_`, and
applied only to banners by default.
2025-03-02 10:34:28 -08:00
Brandon W 6947276894 Add fix and note for Routine chart loading in edit mode. 2025-01-25 11:17:52 -08:00
Brandon W ff8e018fbf Fix a case where we receive no hints on the number of frames in a file. 2024-12-08 08:07:20 -08:00
Brandon W ee16093adc Create a "GameplayHelpers" file and move the margin gathering code
in there.
2024-11-28 11:01:24 -08:00
Brandon W 98b7f28c26 Fixes for Google style guide. 2024-11-06 01:20:31 -08:00
Brandon W 1626398244 Fix for movies shorter than the buffer size. 2024-10-22 16:45:24 -07:00
Brandon W 7b2f0338b8 Add centering back into edit/practice mode playback. 2024-09-30 17:20:11 -07:00
Brandon W cff063cd21 Fix routine chart loading/playback in EditMode. 2024-09-30 13:59:47 -07:00
Brandon W 5bb277b5de Optionally load in P2 during PracticeMode playback.
Use the first PlayerNumber that comes in under export options, this fixes P2
loading by itself in PracticeMode.
2024-09-22 10:59:06 -07:00
Brandon W 804b15959d Implement sliding window between AVPackets and AVFrames, to save memory. 2024-09-22 10:51:01 -07:00
Brandon W a3f3587c19 Fix style in MovieTexture_FFMpeg to match Google C++ style guide. 2024-08-25 12:52:34 -07:00
Brandon W 88511c59cb Use avcodec builtins for constructing and destroying AVFrame and
AVPacket, and switch FrameHolder to unique_ptr.
2024-08-20 21:09:25 -07:00
Brandon W d74ad50707 Remove singlethreaded, old ffmpeg decoding code. 2024-08-10 15:44:06 -07:00
Brandon W eb8f76023e Allow frames that didn't decode to skip. 2024-08-10 11:48:20 -07:00
Brandon W d4ab7b12ed Consume background thread movie decoding. 2024-08-07 10:04:18 -07:00
Brandon W 10e4323e3e Add DecodeNextFrame and DecodeMovie functions to populate the
FrameBuffer.
2024-08-06 17:18:12 -07:00
Brandon W 20452b244a Add FrameBuffer vector and decoding functions.
These functions are based on "DecodePacket" and "ReadPacket". This
PR does not consume the new buffer or decoding functions yet. It also
preps the class for adding a fast cancel to decoding, in the case that
the movie texture is destroyed while decoding is still happening.
2024-07-25 23:11:47 -07:00
Brandon W 23f7ebd476 Add FrameHolder struct and logic around finding totalFrames of movies. 2024-07-25 11:42:16 -07:00
Brandon W b2ada0ad61 Remove dshow movie rendering code.
It hasn't been built into the binary in years, not since before forking
itgmania.
https://github.com/itgmania/itgmania/blob/5d4f9dcb07493ed4c51d6be23e9b41978162305a/src/CMakeData-arch.cmake#L81-L91
https://github.com/stepmania/stepmania/blob/d55acb1ba26f1c5b5e3048d6d6c0bd116625216f/src/Makefile.am#L388

This helps to consolidate the movie rendering code into one main
rendering path.
2024-07-13 21:50:24 -07:00