Commit Graph
34 Commits
Author SHA1 Message Date
itsmattkc 4b366a9b73 update copyright year to 2022 2022-05-10 10:38:56 -07:00
itsmattkc a34fb2145d rational: fixed otio code 2022-05-02 12:37:29 -07:00
itsmattkc 38a5c36a35 rational: rewrite
Our rational is now a much thinner wrapper around AVRational. Their code is better than ours and using it greatly reduces our own maintenance cost
2022-05-02 10:31:59 -07:00
itsmattkc 6a0b5856c9 various: extended marker and timeline functionality 2022-05-01 21:17:22 -07:00
itsmattkc abb84aa2ca rational: assert when limits are used for calculations
These will necessarily result in overflows or underflows so I've attempted to weed this behavior out while adding asserts in case there are still usages I haven't found
2022-04-25 14:26:07 -07:00
itsmattkc ad61954aa2 rational: don't try to reduce when denom == 1
Fixes #1895 (and probably several other issues when using -O2 on ARM64 systems)
2022-04-17 23:35:45 -07:00
luzpaz 01536f9865 Fix various typos in code comments (#1670) [skip ci]
Found via `codespell -q 3 -S *.ts,*.xml -L ba,keypair,numer,uint`
2021-07-13 13:54:30 +02:00
itsmattkc 4de0a72786 rational: don't flip if null
Fixes issue where flipped rationals would erroneously create a NaN.

Fixes #1641
Fixes #1642
2021-05-24 16:04:46 +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 7f93ed7fc0 rational: fixed NaN
Also added tests to ensure rational NaN behavior is tested.
2021-04-23 14:48:22 +10:00
itsmattkc 22b2d08baf rational: implement NaN mode
Also clarify code where 0 is used as a rational.
2021-04-17 15:04:03 +10:00
itsmattkc 9328539373 slider: reworked sliderbase and derivatives
Mostly cleaning up code, SliderBase was fairly messy.
2021-04-17 12:49:21 +10:00
ThomasWilshaw a937238bd0 Merge branch 'master' into otio_improvments 2020-12-04 16:08:38 +00: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
Thomas Wilshaw 2172cf784c Rational: conversion to opentime take framerate
Add a frame rate option to the conversion to opentime rationals as
otio generaly expects rationals to be in the form value/framerate.

Also add a check to make sure the rational is not in the form 0/0
as this can cause errors with OTIO.
2020-11-11 21:53:44 +00:00
itsmattkc bb6d5505f5 otio: began early functionality to export to OTIO 2020-09-25 16:32:18 +10:00
itsmattkc cb0d89c09e rational: print double rather than rational to debug
Doubles are mostly used here anyway.
2020-06-05 04:30:39 +10:00
itsmattkc 1301d4b9cf rational: use true min/max values for extended range
Will address issues caused by comparisons to our MIN/MAX constants when
a numerator/denominator is > INT32_MAX/MIN.
2020-06-01 17:44:42 +10:00
itsmattkc b6a42b812e rational: refactored and cleaned up code
Old code (imported from elsewhere) has been cleaned up significantly, made more
understandable/maintainable, and conformed to the rest of the code style.
2020-05-21 02:16:13 +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 cd06b2f4ac rational: validate values when constructed with AVRational
`rational` is supposed to "fix signs" and "reduce" whenever its values are set,
but I neglected to do this when its values were set by an AVRational. Now it
will do so on both.
2020-01-20 04:07:09 +11:00
itsmattkc 16878e3c25 implemented much of the project loading logic
Still not functional, but much of the groundwork is done.
2020-01-13 04:09:06 +11:00
itsmattkc bb57884cac added save functions to various classes
Each class is responsible for its own saving and loading from the XML data
in order to reduce the complexity of the save code.
2020-01-12 18:36:31 +11:00
itsmattkc d4ee33405b implemented speed/duration dialog and most of its functionality
An earlier commit implementing media in and out parameters was primarily for
this addition. A simple control dialog for the clip's speed presentation
reimplemented from the old codebase.
2019-12-17 03:58:12 +11:00
itsmattkc 16f80386e8 added qhash functions for timerange and rational
So these keys can be used in QHash containers, they need functions for how to
create those hashes.
2019-11-15 13:55:05 +09:00
itsmattkc 79d1f99fa8 removed active instance count from rational class 2019-10-11 10:59:19 +11:00
itsmattkc fb585413a5 fixed bug in rational that caused integer overflows 2019-10-11 09:35:28 +11:00
itsmattkc df9255ce0b timeline views can be siblings 2019-10-07 09:01:11 +11:00
itsmattkc 8df4cf2cdc audiomanager implementation 2019-09-27 03:01:09 +10:00
itsmattkc 1207e180ec fix for transport streams with no duration 2019-09-17 13:40:23 +10:00
itsmattkc f03cc8fe07 base pointer movement in timeline 2019-08-21 15:10:55 +10:00
itsmattkc cee2b617a1 imported new rational type 2019-08-06 08:25:48 +10:00
itsmattkc f8830beac7 created new sequence dialog 2019-07-21 18:21:40 -07:00
itsmattkc 837d43fe07 moved various classes from root to common folder 2019-07-15 03:58:39 -04:00