Commit Graph
76 Commits
Author SHA1 Message Date
itsmattkc b0530cd55d decoders: upload directly to texture 2022-05-19 16:54:18 -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 5f13a83009 footage: support multi-layered images
Fixes #982
2022-05-04 09:27:34 -07:00
itsmattkc 677277c16d renderer: improved code flow 2021-09-21 19:10:03 -07:00
itsmattkc cc21ed37a7 implemented core subtitle support 2021-05-18 12:42:47 +10:00
itsmattkc ba9ed99849 footage: check files for changes 2021-05-16 10:29:05 +10:00
itsmattkc 15556c64ae encoder: write audio in segments
I'll be honest, this probably makes no noticeable difference at all. It should be faster and more efficient, but whether that translates into any tangible improvement is yet to be seen.
2021-05-10 00:44:08 +10:00
itsmattkc 4942970c02 export: fixed many export formats including still image and image sequence export
Still incomplete, but does a lot towards #1345
2021-05-05 19:03:03 +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 77d4b18a60 updated copyright year for 2021 [skip ci] 2021-04-17 18:56:50 +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 f068343a08 oiio: actually store the last opened sequence index
Fixes #1376
2020-11-26 19:53:29 +11:00
itsmattkc 8c3f0ac64e oiio: increased minimum version to 2.1.12 2020-11-19 11:06:40 +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 8776bb9c4a finished upgrade to ocio v2 2020-11-12 15:36:29 +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 1e6208517f decoder: fixed regression in image handling in OIIO decoder
Fixes #1277
2020-10-27 12:36:55 +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
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 4290d9b897 oiio: removed unused enum 2020-09-25 16:59:56 +10:00
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 e42ba3f9d4 corrected compile issues on xenial (should fix linux CI) 2020-08-30 13:35:00 +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 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 df14c2aaa7 cache: better implemented changing disk cache folders
Not complete yet, but getting there.
2020-08-07 02:31:46 +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 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 a871c5081b nodeparamtable: bare bones table view for node inputs 2020-06-17 17:48:07 +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 0cf6c9a1f6 export: use codec IDs rather than strings
Vastly improves portability between library versions.
2020-05-21 03:04:38 +10:00
itsmattkc fb625cb76e nodes: removed XML infrastructure 2020-05-06 15:06:37 +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 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 2d0e5322f2 oiiodecoder: fixed namespace issue 2020-05-02 22:55:45 +10:00
itsmattkc 3e57cdac1d use linesize workaround for setting OIIO pixels as well as getting 2020-05-02 22:51:29 +10:00
itsmattkc e7400adabc oiiodecoder: added compatibility for OIIO 1.x 2020-05-01 18:19:08 +10:00
itsmattkc a2cba8c103 pixelformat: respect linesizes when converting pixel formats 2020-05-01 03:42:31 +10:00
itsmattkc 472030f8f0 oiiodecoder: implemented workaround for oiio stride bug in versions < 2.1.12 2020-05-01 01:38:31 +10:00
itsmattkc 4490b10032 oiiodecoder: fixed broken reference 2020-04-23 03:58:38 +10:00