itsmattkc
25e94112f8
viewer: implement lookahead to ensure footage is ready in advance
2022-07-26 14:49:19 -07:00
itsmattkc
2a1e87c9a9
decoder: cache still textures
2022-07-17 15:42:11 -07:00
itsmattkc
0d9727b6d2
architecture: move loop modes to clips
2022-07-17 15:22:36 -07:00
itsmattkc
a8d46c4c5f
render: fix issue responding to cancelled tasks
2022-07-10 12:54:55 -07:00
itsmattkc
8939a3aa66
allow concurrent decoders for different blocks
2022-06-01 10:03:33 -07:00
itsmattkc
930848e07a
decoder: make texture inside decoder
2022-05-29 18:33:35 -07:00
itsmattkc
6371fe0bc0
decoder: removed interlacing property
...
Interlacing should be moved somewhere else in the pipeline
2022-05-24 17:18:22 -07:00
itsmattkc
b0530cd55d
decoders: upload directly to texture
2022-05-19 16:54:18 -07:00
itsmattkc
09c57422f9
ffmpeg: significantly optimized decoder
2022-05-15 19:33:01 -07:00
itsmattkc
4b366a9b73
update copyright year to 2022
2022-05-10 10:38:56 -07:00
itsmattkc
bb0fedabba
simplified and optimized samplebuffer
2022-05-09 14:55:51 -07:00
itsmattkc
6512774b86
code: conform traverser buffer creation
...
Helps ensure parity between traverser and render processor
2022-05-03 17:10:03 -07:00
itsmattkc
4173eb3c49
conform audio to planar in the decoder
2021-10-13 16:01:26 -07:00
itsmattkc
677277c16d
renderer: improved code flow
2021-09-21 19:10:03 -07:00
itsmattkc
d713ba3be7
fixed 32-bit integer overflow on long audio
2021-08-08 17:05:41 -07:00
itsmattkc
a1345166c7
renderer: move conform to task
...
Improved rendering system and user interface
Fixes #1375
2021-05-14 12:20:53 +10:00
itsmattkc
a15ae63c7d
Merge pull request #1603 from ThomasWilshaw/Fix_1602
...
Allow image sequences to use a period seperator
2021-05-03 22:08:22 +10:00
Thomas Wilshaw
7e93eb6e40
Allow image sequences to use a period seperator
...
Allows image sequences of the form xyz.0000.exr as well as xyz_0000.exr
Fixes #1602
2021-05-03 12:09:24 +01:00
itsmattkc
ee6b09f772
ffmpegdecoder: use avfilter system instead of raw swscale commands
...
Heh this was inevitable
2021-05-03 12:10:51 +10:00
itsmattkc
9d2ddbf727
renderer/decoder: clean up decoders after some time
2021-04-30 11:13:57 +10:00
itsmattkc
1fca3e1767
render: properly defined "out of bounds time" behavior with footage
...
If a user extends a clip beyond the footage's length, they can
choose whether they want a black frame, the last frame continued,
or for the footage to loop infinitely (same for extending earlier
than the start of footage).
2021-04-23 14:49:21 +10:00
itsmattkc
77d4b18a60
updated copyright year for 2021 [skip ci]
2021-04-17 18:56:50 +10:00
itsmattkc
cb75e37e77
moved several files around
...
Mostly moved classes that became node derivatives into the node/ folder.
2021-04-08 12:15:59 +10:00
itsmattkc
4827782331
moved sequence params into node graph too
...
Reduces code by reusing more of the existing node infrastructure
to synchronize sequence parameters the render backend.
2021-02-18 13:20:23 +11:00
itsmattkc
d7c5ac4b44
implement entire project in nodes
...
Project items are now represented directly in nodes opening up more versatility and possibilities. This is the first iteration of this and will be buggy. Need to test thoroughly.
2021-02-15 21:31:57 +11:00
itsmattkc
6cb6407bd8
don't use shared ptrs on streams
2020-12-16 13:46:19 +11:00
itsmattkc
e12013e2fb
don't use shared ptrs for project items
2020-12-16 10:28:43 +11:00
itsmattkc
75d4cd899b
use hardcoded namespace
...
The macro defined namespaces confused the hell out of lupdate and more or less broke translations permanently. Looks like the only way we can do it is to have a hardcoded namespace, which goes against my instinct, but honestly how likely is it that we'll change the namespace anyway (I guess forks might want to do it, but that's their problem ;) )
2020-11-17 20:24:42 +11:00
itsmattkc
d241090a9f
finally updated the copyright year
2020-11-17 20:13:22 +11:00
itsmattkc
0d0766e4fb
improved render channel count system
2020-11-15 22:16:40 +11:00
itsmattkc
94c0914e50
codec system rework
...
Codecs are now much cleaner and thread safe by design.
2020-11-10 11:23:25 +11:00
itsmattkc
bc60c74562
finalized very, very basic OTIO support
...
Ironed out various project and footage loading issues, and a single
cache invalidation issue.
2020-10-23 01:26:17 +11:00
Thomas Wilshaw
70455c1501
Fix building without OTIO support
...
Added a new CMake flag that stops any OTIO related cpp files being
built.
Added extra #ifdefs to catch any OTIO related code in other cpp
files.
2020-10-15 18:59:06 +01:00
itsmattkc
6db591e89f
footage: merge video and image streams and improve image sequence import process
...
Image streams were initially separated from video streams, but they're now
joined with a parameter defining if they're a still image, image sequence,
or regular video. The image sequence import process has also improved so
that if images from the same sequence are imported too, they'll either be
ignored or the user won't be asked again for those if they should be an
image sequence (fixes #1193 ). Also shifts decoder "probe" process to return
an item, useful if the decoder returns a non-footage item.
2020-09-26 19:45:07 +10:00
itsmattkc
818f38d55a
otio: started otio decoder for importing OpenTimelineIO
2020-09-25 16:58:07 +10:00
itsmattkc
d9851dc329
decoders: mild refactoring and code cleanup
...
Just making things a little bit nicer.
2020-08-18 03:17:01 +10:00
itsmattkc
df14c2aaa7
cache: better implemented changing disk cache folders
...
Not complete yet, but getting there.
2020-08-07 02:31:46 +10:00
itsmattkc
9095dfa463
project: replaced proxy with pre-cache
...
Removed proxy task and replaced with a true honest-to-god pre-cache for
footage. This footage is pre-cached to a sequence and therefore 100% ready
for use in it once the task is done.
2020-06-08 23:17:51 +10:00
itsmattkc
430561e2ac
sequence: made divider a sequence parameter rather than a viewer parameter
...
Doing this makes the preview resolution an explicit project setting rather
than a temporary UI setting. This will allow more consistency when caching.
2020-06-08 14:41:35 +10:00
itsmattkc
cd847a89ce
decoder: removed old unused code
...
Minor cleanup.
2020-05-19 03:34:49 +10:00
itsmattkc
cb383d760b
tasks now emit floats rather than integers
...
Simplifies code for tasks.
2020-05-19 02:44:38 +10:00
itsmattkc
2b1640ac04
frame/texture: use dividers when allocating buffers
...
Allows render pipeline to know the "real" and "simulated" resolution of a
divided buffer.
2020-05-04 01:08:46 +10:00
itsmattkc
e4e797c901
proxy: cleaned up, re-use the render cache's disk save system for proxies, multithreaded compression
2020-05-04 00:29:26 +10:00
itsmattkc
6754feb2f6
proxy: began work towards creating proxy from video
2020-05-03 17:09:52 +10:00
itsmattkc
e4c3b6bf7b
renderer/decoder: simplified audio PCM transcode
...
Turned the two-step PCM transcode into one step and simplified/removed much of
the unnecessary infrastructure that supported it. This makes the code cleaner
and generally improves the code paths.
2020-05-03 16:07:10 +10:00
itsmattkc
a925476c3f
began work on exr proxy task
2020-05-03 05:23:36 +10:00
itsmattkc
b3bebeeef3
decoder: removed unused destructor
...
Very old unused code.
2020-04-14 14:51:15 +10:00
itsmattkc
1aa87cbda6
various: encapsulate all code in the olive namespace to avoid name collisions
...
Large-scale code cleanup. Also adds a license to the top of all files that were
missing it.
2020-04-06 15:29:53 +10:00
itsmattkc
6f0d72c05d
renderer: switched audio rendering over to planar buffers
...
While planar audio cannot be used for playback, it's much easier for processing.
This should lead to cleaner and easier to write code in the future.
2020-03-31 18:01:20 +11:00
itsmattkc
d87b4fde8c
renderer/decoder: use divider at the footage level
...
Optimizes rendering if a divider is being used.
2020-02-27 15:47:08 +11:00