itsmattkc
7bdaf78af8
oiio: assume it's not an image sequence if the dimensions aren't equal
2020-09-21 12:21:17 +10:00
itsmattkc
8506c82a0c
import: safely handle unsupported files
...
Fixes #1191
2020-09-18 12:58:55 +10:00
itsmattkc
e42ba3f9d4
corrected compile issues on xenial (should fix linux CI)
2020-08-30 13:35:00 +10:00
itsmattkc
050103a857
memory: implemented basic memory limiting functionality
...
Keeps track of total memory usage and uses it as a guide towards
allocating/reusing more memory.
2020-08-29 13:34:54 +10:00
itsmattkc
c99eb68d45
ffmpegdecoder: frame pool by dimensions/format rather than stream
...
Memory optimization.
2020-08-26 17:42:10 +10:00
itsmattkc
c12e39b597
ffmpegframepool: reduced frame pool size
2020-08-19 17:41:46 +10:00
itsmattkc
f3f81eb2be
ffmpeg: store divided frames in memory cache
...
Since users will most likely be working with a divider most of the time,
there's no reason to waste memory space with undivided frames considering
the dividing process is quite fast.
2020-08-18 04:55:23 +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
35692b9fba
frame: removed native timestamp member
...
Wasn't used anymore.
2020-08-18 02:08:22 +10:00
itsmattkc
4f1e7ea4ef
oiio: fixed incorrect version namespace
2020-08-10 02:54:03 +10:00
itsmattkc
28dcff10c0
various: implement sequence pixel aspect ratios and interlacing settings
...
Implements the following:
- Sequences have pixel aspect ratios that work in tandem with footage PARs
to render footage correctly. Viewer and export also acknowledge PARs
- Sequences can have interlacing settings. This doesn't do anything yet,
eventually the renderer will need to interlace/deinterlace/reinterlace
appropriately in order to conform all the footage to the sequence. Export
acknowledges interlacing, but this only affects metadata, not the image.
2020-08-10 01:47:26 +10:00
itsmattkc
901f1001af
renderer: improved memory management
...
Clear up more memory when it isn't used for a while.
2020-08-09 14:03:11 +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
9a4dcd8277
ffmpegdecoder: handle unexpected EOF
2020-08-05 22:31:14 +10:00
itsmattkc
d453c13c15
initialize variable (fixes gcc build issue)
2020-08-05 01:38:00 +10:00
itsmattkc
fb05594b50
various: allow setting footage aspect ratios
...
We had support for detecting aspect ratios and respecting them in the
render, but this allows people to not only see the aspect ratio in use,
but also override it with their own.
2020-07-25 00:58:01 +10:00
itsmattkc
5235975d6d
export: allow selecting output pixel format
2020-07-24 14:45:27 +10:00
itsmattkc
e570abb556
sequencedialog: split off the preset code for use elsewhere (particularly the export dialog)
2020-07-23 20:07:11 +10:00
itsmattkc
11afdf32fe
decoder/timeline: improve decoding of still images
2020-07-12 18:25:51 +10:00
itsmattkc
b456b6b0f6
oiiodecoder: make sure spec is used instead of basetype
...
Fixed issue with image alpha handling.
2020-06-17 19:53:21 +10:00
itsmattkc
a818e17c55
export: made progress on headless export
...
Still incomplete and unusable, but less so than before.
2020-06-17 18:06:50 +10:00
itsmattkc
a871c5081b
nodeparamtable: bare bones table view for node inputs
2020-06-17 17:48:07 +10:00
itsmattkc
cbbf1c9149
framehashcache: use correct linesize when saving EXR
...
Fixes stride issues on non-standard frame sizes.
2020-06-16 15:38:23 +10:00
itsmattkc
8d21a2c1ef
ffmpegdecoder: restore multithreading
2020-06-16 13:34:49 +10:00
itsmattkc
406f61e546
ffmpegdecoder: use last timestamp for initial seek calculations
...
Fixes bug that would destroy cache performance. Like... just annihilate it.
Like an absolute nuclear holocaust of cache performance.
2020-06-16 02:58:21 +10:00
itsmattkc
0c9435c94d
frame: implemented set pixel function
...
Counterpart to Frame::GetPixel()
2020-06-13 03:00:41 +10:00
itsmattkc
23365074f0
samplebuffer: fixed segfault when changing speed
2020-06-12 14:53:27 +10:00
itsmattkc
54091549df
samplebuffer: added convenience functions for altering sample data
2020-06-12 03:27:14 +10:00
itsmattkc
a9a13c4b0c
framehashcache: remove code for saving integer-based frames to cache
...
Since we don't allow non-float cached frames now, there's no need to have
this code complicating the codebase.
2020-06-10 14:12:26 +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
c2e47a296c
timeline: heavily optimized and improved nearly all timeline optimizations
...
Features a lot of timeline-related cache optimizations as well as general
optimizations and improvements in timeline behavior. Should improve
usability significantly.
2020-06-01 04:42:59 +10:00
itsmattkc
6507cfbfc9
ffmpegencoder: ensure codec ID is initialized
2020-05-21 18:28:34 +10:00
itsmattkc
0cf6c9a1f6
export: use codec IDs rather than strings
...
Vastly improves portability between library versions.
2020-05-21 03:04:38 +10:00
itsmattkc
d5766489e4
export: fixed audio exporting with new renderer system
2020-05-21 02:18:52 +10:00
itsmattkc
87e7564222
cache: heavily reworked exporting for new system
...
Also cleans up cache in general and moves it to the Task infrastructure.
2020-05-19 23:35:17 +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
814bbe8c22
fixed various segfaults in decoder and renderer
2020-05-18 02:40:58 +10:00
itsmattkc
863ae1b913
a first attempt at a new render system
2020-05-14 14:43:03 +10:00
itsmattkc
869f41fc50
ffmpegdecoder: fixed audio bug that failed to conform if the codec didn't supply a channel layout
2020-05-09 16:06:05 +10:00
itsmattkc
fb625cb76e
nodes: removed XML infrastructure
2020-05-06 15:06:37 +10:00
itsmattkc
22bfff2c62
proxy: improved progress signalling
...
Signals once cache to disk is fully complete (rather than signalling on decode
and then sitting at 100% for ages until the disk saving is done).
2020-05-04 01:53:47 +10:00
itsmattkc
b458bfa542
proxy: improved UI on proxy menu
2020-05-04 01:33:26 +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
2d0e5322f2
oiiodecoder: fixed namespace issue
2020-05-02 22:55:45 +10:00