Commit Graph
32 Commits
Author SHA1 Message Date
itsmattkc 83e7707025 media: implement importing SRT files 2022-05-11 13:48:59 -07:00
itsmattkc 4b366a9b73 update copyright year to 2022 2022-05-10 10:38:56 -07:00
Bennett 4eba69c305 Return timestamp of 0 if 'time' is NaN; would otherwise cause signed integer overflow in qRound64 2022-05-02 17:25:23 -07:00
itsmattkc cf1e8c9a95 fixed bug preventing negative timecodes being parsed correctly 2022-02-01 19:55:30 -08:00
itsmattkc 178fbb6f2f timecode: use different drop-frame detection heuristic 2021-08-02 11:06:21 -07:00
itsmattkc 0c04bcf045 timecode: allow specific rounding routines 2021-07-08 11:39:29 -07:00
itsmattkc 60c21e23f5 timecodefunctions: allow flooring "to timestamp" conversions 2021-05-13 23:57:50 +10:00
itsmattkc 77d4b18a60 updated copyright year for 2021 [skip ci] 2021-04-17 18:56:50 +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
itsmattkc bb32048c65 use frame rate and timebase less interchangeably 2021-04-07 13:08:25 +10: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 4c4bcb0989 moved simple ms to hh:mm:ss function to timecodefunctions 2020-05-24 17:40:30 +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 76f260cb3a timeline: added ability to move clips by sample in addition to by frame 2020-04-01 13:55:19 +11:00
itsmattkc 52a8966abd timecode functions: added convenience function and improved error reporting
Added a convenience function for converting rational time to a timecode
and timecode converters now return error messages if something goes wrong.
2020-03-23 15:26:31 +11:00
itsmattkc abb4c440fb core: added signalling for timecode display changes
Allows targeted application-wide UI updates for when the user changes the
timecode display so that the response is immediate.
2020-03-18 14:09:31 +11:00
itsmattkc 7f796bd99f revised video renderer's invalidate cache to use ranges rather than discrete
frames

Previously, when the video renderer received a dirty cache signal, it would
proceed to extract all frames from the range and queue them. However, this could
be extremely slow for long ranges since it had to iterate through the entire
range and calculate the individual frames it contained. Now, we use the same
range combining system as audio and automatically calculate the next frame
within the range only when necessary. Essentially the same work, but split up
over time and done only when needed leading to no discernible UI pause when
invalidating cache.
2020-01-03 15:50:43 +11:00
itsmattkc 61c60e00d6 various small code cleanups and improvements
Largely refactoring work to make the code somewhat nicer to work with.
2019-12-26 19:00:08 +11:00
itsmattkc 520b8b46fa place timecode conversion functions into a Timecode class rather than an olive namespace
Code cleanup and improvement.
2019-12-26 17:20:58 +11:00
itsmattkc 72f2d06ab3 fixed timecodes showing negative numbers between tokens 2019-12-14 23:13:37 +11:00
itsmattkc 3bfe333878 replaced QString uses with QStringLiteral
Minor code optimization according to Qt documentation.
2019-12-10 00:42:31 +11:00
itsmattkc 4bb874a154 fix sigfpe on timecode function if the timebase isn't valid 2019-12-09 23:43:03 +11:00
itsmattkc 2fe03debec reimplement string timecode to frame number conversion 2019-12-08 00:10:43 +11:00
itsmattkc 2fdf78df4a implemented preliminary pre-cacher for audio
FFmpegDecoder now implements an "indexer" for audio, which actually just
extracts the raw PCM audio from an audio codec and saves it to disk
2019-10-24 16:36:26 +11:00
itsmattkc 56e3fd41e5 various UI reimplementations from 0.1.x 2019-09-26 03:49:49 +10:00
itsmattkc 9fa22938b9 work towards making timeline actions all undoable 2019-09-23 23:00:15 +10:00
itsmattkc 360328ccbb more work towards loading media into the node graph 2019-08-06 08:26:25 +10:00
itsmattkc 90bb6734f7 documentation and minor timecode revision 2019-07-25 00:23:02 -07:00
itsmattkc abecd2f999 timeruler more or less done 2019-07-25 00:11:32 -07:00
itsmattkc 3564e71c1c time ruler interactivity 2019-07-24 21:46:28 -07:00
itsmattkc 705ecc0910 developed timeruler prototype 2019-07-24 19:21:46 -07:00