Commit Graph
263 Commits
Author SHA1 Message Date
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 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
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 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 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 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 54d0a94a20 Merge branch 'master' into cache-update 2022-08-18 08:12:46 -07:00
Olivier Gayot 29cf63b10a ffmpegdecoder: fix missing include avcodec.h to avoid build failures
ffmpegdecoder.h declares a pointer to AVCodecContext ; which is a type
defined in libavcodec/avcodec.h.

Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
2022-08-16 18:41:18 +02:00
itsmattkc 409f24be39 exportdialog: allow restoring parameters 2022-08-10 11:49:21 -07:00
itsmattkc 30b64d9b9c render: reimplemented deinterlacing with new shader-based format conversion 2022-08-08 14:05:11 -07:00
itsmattkc a270b1e3e1 ffmpegdecoder: re-enable hardware scaling 2022-08-08 12:55:57 -07:00
itsmattkc 1ac205413c footage: allow overriding YCbCr range
Fixes #1354
2022-08-08 12:49:50 -07:00
itsmattkc ad1b8a5a35 ffmpegdecoder: use real colorspace coefficients in shader 2022-08-07 23:40:21 -07:00
itsmattkc 73fa930f02 ffmpegencoder: use avfilter instead of swscale for pixel format conversions 2022-08-07 14:00:12 -07:00
itsmattkc 91eaa759b7 ffmpegencoder: various improvements 2022-07-27 13:39:27 -07:00
itsmattkc 559b1f18e7 Merge branch 'master' into pr/1987 2022-07-27 10:05:00 -07:00
Thomas Wilshaw fb34a4b799 Reset transfer tag 2022-07-27 14:17:06 +01:00
Thomas Wilshaw 9fa1ce00e5 Add basic nclc tag support
Sets nclc tags based on the selected output color space.

Also adds a Rec.709 OETF to the config
2022-07-26 20:19:23 +01:00
itsmattkc 07f63ddc17 renderer: reinstated new and improved texture cache 2022-07-26 10:12:19 -07:00
itsmattkc e3403a5a53 render: create less textures 2022-07-26 09:40:26 -07:00
itsmattkc 02f4be6e3c footage: account for invalid streams before valid streams
Fixes #1983
2022-07-24 08:57:09 -07:00
itsmattkc 187568324a render: ensure correct yuv range handling 2022-07-20 23:16:08 -07:00
itsmattkc 5ea97f7a64 render: remove alpha request option 2022-07-20 23:14:16 -07:00
itsmattkc a8d46c4c5f render: fix issue responding to cancelled tasks 2022-07-10 12:54:55 -07:00
itsmattkc 7e1792cfea Merge branch 'master' into cache-update 2022-07-01 22:32:49 -05:00
itsmattkc 3f8001b146 render: use single base thread for rendering 2022-06-21 14:08:29 -07:00
itsmattkc 998b9ba482 Merge branch 'master' into hashremoval 2022-06-01 10:06:33 -07:00
itsmattkc eb9b1850ae minor code cleanup 2022-05-31 20:14:07 -07:00
jazztickets bd78c1971c Merge branch 'olive-editor:master' into av1 2022-05-31 12:08:03 -06:00
itsmattkc 9918af2614 Merge branch 'master' into hashremoval 2022-05-30 21:00:05 -07:00