Commit Graph
382 Commits
Author SHA1 Message Date
Mike Solar 22fd521951 Merge branch 'refs/heads/dev' into plugin
# Conflicts:
#	.gitmodules
#	CMakeLists.txt
#	ext/core
2025-12-13 21:45:46 +08:00
Mike-Solar 1e33a31b73 Update FFmpeg handling and focus management
Refactor FFmpeg frame processing and improve focus management in panels. Add memory sanitization for debug builds and update KDDockWidgets integration.
2025-11-23 16:35:09 +08:00
Mike-Solar 2ea53667c0 Refactor FFmpeg decoder for improved readability and efficiency
Simplify the frame reading process and metadata extraction in `ffmpegdecoder.cpp` by reducing redundant code and improving variable initialization. Add a helper function in `ffmpegdecoder.h` to map FFmpeg field orders to Olive interlacing types, enhancing code clarity. Adjust the condition for interleaved write in `ffmpegencoder.cpp` for better handling.
2025-11-10 21:06:35 +08:00
Mike-Solar c1b8618391 fix: crash when processing audio 2025-09-14 21:10:02 +08:00
Mike Solar 6fdfd03ffd update: update copyright 2025-08-05 17:12:49 +08:00
Mike Solar 74f73ab3be change: change code style to Linux style except indent. 2025-08-03 03:09:40 +08:00
Mike Solar e18cf095f5 试图解决编译错误 2025-06-19 21:01:45 +08:00
Mike Solar c04fceef9b 试图解决编译错误 2025-06-18 20:42:45 +08:00
Mike Solar 5f9508434f 试图解决编译错误 2025-06-18 08:54:06 +08:00
itsmattkc 0a54585ece ffmpegdecoder: disable stills in otherwise audio only files by default 2023-03-20 16:50:11 -07:00
itsmattkc 9745b536f6 nodes: remove graph and merge into project 2023-02-17 14:13:03 -08:00
itsmattkc fa88db42e4 Merge pull request #1943 from jazztickets/av1
AV1 export support
2023-02-08 13:03:51 -08:00
itsmattkc c322bb6463 exportdialog: fixed UI issue that allowed "sidecar" files on direct subtitle exports 2023-02-06 17:27:27 -08:00
jazztickets 9959f15bc4 Merge branch 'master' into av1 2023-01-30 14:04:15 -07:00
itsmattkc c1c6893713 various: moved more to core lib 2023-01-19 16:01:31 -08:00
itsmattkc dd9c52ab59 start moving core frameworks to external libraries 2023-01-19 09:51:47 -08:00
jazztickets d54465b16a Merge branch 'olive-editor:master' into av1 2022-11-25 11:18:49 -07:00
itsmattkc 5bcb426488 ffmpeg: ensure duration detection responds to cancel action 2022-11-19 17:36:16 -08:00
itsmattkc 7e604e7433 ffmpeg: re-enable glsl and track colspace and colrange 2022-11-16 17:07:33 -08:00
itsmattkc 6b6f164c44 ffmpeg: refactor so swscale is an optional step before glsl 2022-11-16 17:00:45 -08:00
itsmattkc ca47792dc7 nodes: clamp footage retrieval times for clips
Fixes #2070
2022-11-01 12:44:01 -07:00
itsmattkc 5e92930de0 nodes: fix loop mode regression 2022-11-01 09:15:51 -07:00
itsmattkc e94580c369 ffmpegencoder: split sample buffer when writing audio
Avoids integer overflow in FFmpeg

Fixes #2072
2022-10-29 12:07:55 -07:00
itsmattkc 972ec1e340 ffmpegencoder: catch error on sample array alloc 2022-10-29 11:36:09 -07:00
itsmattkc 5fe6faf15a ffmpeg: slightly improve performance of yuv2rgb 2022-10-29 09:59:45 -07:00
Thomas Wilshaw ddeab29da3 ffmepgdecoder: simplify code and improve vairable name 2022-10-26 21:02:59 +01:00
Thomas Wilshaw 9bc10e8301 ffmpegdecoder: add comment 2022-10-25 17:39:45 +01:00
Thomas Wilshaw d011229864 ffmpegdecoder: Catch bad stream duration estimates
For some formats, particularly mxf, FFmpeg calculates the duration
of the stream incorrectly. Here we try to catch that and force Olive
to use it's much slower, but correct fallback method.
2022-10-25 17:24:40 +01:00
itsmattkc 876bc26a5c decoder: track divider in cached frame 2022-10-24 10:13:17 -07:00
jazztickets cb2f960b2d Merge branch 'olive-editor:master' into av1 2022-10-12 09:11:27 -06:00
itsmattkc 7791dde954 ffmpegdecoder: use inline avtimebase rather than macro 2022-10-11 00:59:12 -07:00
itsmattkc e17a24021f ffmpegdecoder: disable interlaced scaling
So for some reason enabling interlaced scaling causes memory corruption. Is it an FFmpeg bug or ours? I have no idea. But it only happens if interlaced scaling is enabled. If it isn't, either by forcing it off or deinterlacing it beforehand, it doesn't happen. Since scaling is only done for low quality preview, I opted to just disable it, but maybe I'll decide against it later.
2022-10-11 00:27:27 -07:00
itsmattkc 202342e24f ffmpegdecoder: factor in AVFormatContext::start_time 2022-10-11 00:25:56 -07:00
itsmattkc 4f6dd6aeb1 ffmpegdecoder: offset target timestamp by start timestamp
Fixes #2054
2022-10-10 18:54:45 -07:00
itsmattkc bb63b6968c decoder: use atomic int instead of mutex for access time
Prevents main thread from getting hung up if the decoder is doing something slow
2022-10-10 18:54:45 -07:00
itsmattkc 184e43fb68 encodingparams: fix bug where pixel aspect wasn't serialized 2022-10-06 09:42:57 -07:00
itsmattkc b2b32805ee ffmpegdecoder: ensure scaled frame is unref'd 2022-10-06 00:32:24 -07:00
itsmattkc 5d5b2440a1 ffmpegdecoder: improved glsl and swscale interoperability 2022-10-04 21:24:05 -07:00
itsmattkc 73e1e60f82 Revert "ffmpegdecoder: removed conflicting deinterlacing code"
This reverts commit 95851c0656.
2022-10-04 20:52:56 -07:00
itsmattkc 783d9af864 encoder: fix bug where audio bitrate wasn't serialized 2022-10-04 12:36:19 -07:00
itsmattkc 75e78ae1e0 ffmpegdecoder: minor code cleanup 2022-10-04 11:29:28 -07:00
itsmattkc 95851c0656 ffmpegdecoder: removed conflicting deinterlacing code 2022-10-04 11:08:33 -07:00
itsmattkc 3275dac50f decoder: fixed longstanding audio sync issue
Wow this has probably been a bug for 3 years straight
2022-10-03 15:30:52 -07:00
jazztickets b650d2d20e Merge branch 'olive-editor:master' into av1 2022-09-26 17:31:01 -06:00
itsmattkc c0d8ff403f nodes: rework so that jobs can be completely deferred
Big optimization requiring a lot of refactoring.
2022-09-24 18:44:59 -07:00
jazztickets baceba1fda Merge branch 'olive-editor:master' into av1 2022-09-16 15:20:30 -06:00
itsmattkc 3cb9caa35d Merge branch 'cache-update' 2022-09-15 16:10:25 -07:00
itsmattkc 16b9cdda8d ffmpegdecoder: downsample frame where possible before gpu transfer 2022-09-08 20:35:08 -07:00
jazztickets b901762df9 Merge branch 'olive-editor:master' into av1 2022-09-07 17:26:09 -06:00
itsmattkc 4f53869b98 samplebuffer: use std::vector and size_t for all calculations 2022-09-01 12:12:15 -07:00