Commit graph

49 commits

Author SHA1 Message Date
Megamouse e58ce626d5 Video Encode: do not set the frame_number
Fixes a deprecation warning, and it is supposed to be set by ffmpeg anyway.
2024-08-01 18:04:47 +02:00
RipleyTom a50683d6ca
sys_net improvements (#15584)
Also remove redundant ensures
2024-05-13 05:35:08 +03:00
Megamouse f7fa5aab70 media_utils: fix segfault when stopping a recording 2024-01-12 19:53:20 +01:00
Megamouse 4ad4badcfe audio_decoder: fix more memleaks and dangling files 2024-01-10 22:34:13 +01:00
Megamouse b0a7448394 get_media_info: improve logging 2024-01-10 22:34:13 +01:00
Megamouse bed7763a3b audio_decoder: ignore first invalid data error 2024-01-10 22:34:13 +01:00
Megamouse 572c075a4b audio_decoder: improve logging 2024-01-10 22:34:13 +01:00
Megamouse bad7756af2 audio_decoder: properly free packets 2024-01-10 22:34:13 +01:00
Megamouse 45c89030ac audio_decoder: check for failed av_packet_alloc 2024-01-10 22:34:13 +01:00
Megamouse 59c58aa3cf fix some warnings 2023-12-30 19:07:35 +01:00
Megamouse 4520f7646f recording: use scoped_lock 2023-11-30 00:34:32 +01:00
Megamouse 9e76e14a79 recording: optimize access to video recorder
Use separate locks for audio and video
Fix audio mutex usage in cellRec.
Removes can_consume_sample, since we don't do any processing
between can_consume_sample and present_samples.
Use get_system_time for consistency.
Move pts reset to set_video_sink.
Make start time atomic.
Remove frame and sample counts.
Use m_active to early out to reduce mutex locks.
Do not try to present samples if the recording mode is stopped anyway.
2023-11-30 00:34:32 +01:00
Megamouse 23316d4e1e cellRec: fix pausing and resuming 2023-11-23 21:19:31 +01:00
Megamouse 0899723510 recording: add h264/aac, better logging of output formats 2023-11-23 21:19:31 +01:00
Megamouse 434a63a98a recording: rename audio_sample to audio_frame 2023-11-23 21:19:31 +01:00
Megamouse 49f910a56b recording: improve pts accuracy and consistency
Also clean up some logging
2023-11-23 21:19:31 +01:00
Megamouse b2d9da0b4b recording: Fix flush. We want to clear the whole queue... 2023-11-23 21:19:31 +01:00
Megamouse 6ba204a259 recording: decrease log spam 2023-11-23 21:19:31 +01:00
Megamouse 5fa77b04ea recording: remove unused duration member variable 2023-11-23 21:19:31 +01:00
Megamouse dbbf318e1c recording: fix warning 2023-11-23 21:19:31 +01:00
Megamouse 9e3763e6e5 recording: use av_interleaved_write_frame 2023-11-23 21:19:31 +01:00
Megamouse 42cd7df813 recording: fix default sample rate 2023-11-23 21:19:31 +01:00
Megamouse 70c35642a4 recording: initial audio recording 2023-11-23 21:19:31 +01:00
Megamouse 39bbf17caf cellRec: fix width of encoder frames
Turns out the pitch was accidentally used as width, leading to an out of bounds read/write.
I kept the pitch in the struct for completeness' sake. It may be needed later, if only for error checks.
2023-08-13 00:37:19 +02:00
Ivan Chikish d34287b2cc Linux: use futex_waitv syscall for atomic waiting
In order to make this possible, some unnecessary features were removed.
2023-08-02 21:46:06 +03:00
Megamouse bb2d7063c4 Update ffmpeg 2023-08-02 08:21:47 +02:00
Megamouse 6794ae35a1 mac arm: try to fix compilation 2023-05-18 18:52:25 +02:00
Megamouse 911cd678ff cli: add ability to log ffmpeg codecs 2023-05-17 00:23:47 +02:00
Megamouse 3ff464641a Fix Visual Studio 17.5.0 compilation
For some reason there's an internal compiler error related to atomic wait.
I could work around this issue when I commented "mask = default_mask<X>;".
So after playing around a bit I had the suspicion that the VS parser can't handle some of the templatization.
Giving the decltype its own alias seems to fix this issue (and makes the code a bit more readable anyway in my opinion).
2023-02-25 19:20:55 +03:00
Megamouse 38d612e5ba fix some warnings 2023-02-22 00:15:11 +01:00
Megamouse 24445123fc Recording: Fix possible encoder segfault 2023-01-18 00:24:00 +01:00
shinra-electric bf37087a10 Fix build errors by changing AVCodec* to a const
...rather than a variable. 

Allows RPCS3 to build on macOS again (Xcode 14.1)
2022-12-09 14:21:37 +03:00
Megamouse 88269636d3 utils: implement video encoder and image sink 2022-12-08 21:08:37 +01:00
Nekotekina 6ff6a4989a Implement at32() util
Works like .at() but uses source location for "exception".
2022-09-26 18:04:15 +03:00
Nekotekina b49a1f27eb Warning fixes 2022-09-17 16:35:02 +03:00
Megamouse 3d73915358 cellSearch: improve populate_photo_info, read image headers 2022-07-26 17:27:35 +02:00
Megamouse c40439ae6b cellMusic/Decode: implement playlist shuffle and repeat 2022-07-22 08:42:43 +02:00
Megamouse 88ee62be26
cellAdec: fix uninitialized default size of AVPacketHolder (#12077) 2022-05-25 11:40:51 +02:00
Megamouse f42e647430 cellVdec: use av_error_to_string 2022-04-21 22:22:33 +02:00
Megamouse d8bbec9594 libav: log more error codes as string 2022-04-21 08:10:01 +02:00
sguo35 e761b3235c macos: fix build for arm64
Adds arm64 branches to some x86 specific code and modifies some casting
logic to make Clang happy
2022-04-18 17:53:54 +03:00
Megamouse aafd74f9ea cellMusicDecode: initial implementation
Implements the basic functionality of cellMusicDecode.
Works with Space Invaders (if you add the list selection from the other PR).
Probably fixes SSX custom music.
2022-03-05 18:34:27 +01:00
Megamouse 15e74357cf cellMusic: implement qt music handler 2022-03-03 08:25:46 +01:00
Megamouse 0debcfed0a Silence some warnings 2021-09-02 19:39:42 +02:00
Nekotekina 064fc81697 Fix warnings 2021-08-06 10:41:40 +03:00
Megamouse 867f0e1f02 fix warning 2021-07-23 00:09:46 +02:00
Megamouse fad79a96a2 media_info: improve error logging 2021-06-25 09:41:32 +03:00
Megamouse b6128c5dfa cellSearch: extend media_info for video files 2021-06-25 09:41:32 +03:00
Megamouse 68a1da31a0 cellSearch: move audio info to separate util file 2021-06-25 09:41:32 +03:00