Commit Graph
193 Commits
Author SHA1 Message Date
itsmattkc 75c3a37c17 removed speed/duration dialog
This is the first step in what will eventually be keyframable time
remapping. The speed/duration dialog was a holdover from 0.1 and we can
probably do better here.
2020-08-19 17:42:52 +10:00
itsmattkc e043976189 footage: allow changing an image sequence's frame rate 2020-08-16 17:32:20 +10:00
itsmattkc 1b7badb85b fixed shadowed variable issue 2020-08-10 23:17:51 +10:00
itsmattkc 08d4c7b385 config: save style 2020-08-10 21:37:04 +10:00
itsmattkc 03e33227b3 cache: moved disk settings to a separate dialog
This way the cache settings can be accessed in both ProjectProperties and
Preferences.
2020-08-10 20:30:11 +10:00
itsmattkc 192ea45a24 sequencedialog: use lower field dominance in standard definition presets 2020-08-10 18:33:29 +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 d85089f71a cache: improved setting manual cache path on a per project basis 2020-08-07 13:41:09 +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 a34d696138 various: fixed issues on some compilers 2020-08-06 01:50:49 +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 ceeb491293 richtextdialog: implemented basic html tag editing
Another step in moving away from the WYSIWYG rich text dialog.
2020-07-11 01:44:48 +10:00
itsmattkc c710fd162e richtextdialog: show html tags rather than wysiwyg
While good in theory, a WYSIWYG rich text editor for large video frames
was unwieldy (and in many cases unhelpful). Instead the titler will
show plain text/HTML tags so the user can still write rich text but
without the unwieldy UI.

For a true WYSIWYG experience, we would probably need to write a true
graphical editor (a la Premiere's titler), but that's a later goal.
This titler will be sufficient in a good majority of cases and there
are plenty of dedicated graphics packages if more complex titling is
required for the timebeing.
2020-07-10 18:42:13 +10:00
itsmattkc 115e62f140 slider: further behavior improvements
Ladders appears offset on sliders with multipliers. Ladder also appears
on initial press (but still shows line edit if mouse wasn't moved)
2020-06-18 18:58:49 +10:00
itsmattkc cadb703ed8 ui: made os integration more universal
ProgressDialog doesn't have to worry about the platform anymore, now
MainWindow will determine what to do or whether to ignore certain progress
indicator functions.
2020-06-16 16:55:11 +10:00
itsmattkc 4c548bc6a5 slider: implemented value ladder
Allows finer control over value changes.
2020-06-14 03:56:18 +10:00
itsmattkc 49cf9f4458 richtextdialog: finalized functionality in dialog 2020-06-14 01:20:21 +10:00
itsmattkc 37b7330274 text: added crude basic rich text dialog
To be expanded upon...
2020-06-13 20:04:17 +10:00
itsmattkc 21e6085c32 project: removed proxy path
The proxy is now a pre-cache, so there are no longer distinct folders
for it.
2020-06-13 13:06:10 +10:00
itsmattkc 204372170f speeddurationdialog: fixed behavior issues 2020-06-12 14:54:25 +10:00
itsmattkc 0f301cfdcc manageddisplaywidget: show colorspaces as well as DVL 2020-06-09 13:53:20 +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 50b4c1e456 sequence: rather than a static divider in config, default to a heuristically generated one 2020-06-08 15:18:01 +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 532af463f0 sequencedialog: extended sequence dialog to include presets
Also includes the ability to make custom presets which negates the need for
setting default sequence parameters in preferences.
2020-06-08 03:12:54 +10:00
itsmattkc 1d4bfba088 exportdialog: fixed default filename bug
Fixes bug where the last character of the default export filename (sourced
from the sequence name) would get cut off unnecessarily.
2020-05-30 02:02:39 +10:00
itsmattkc 4f21a930dd tasks: added elapsed/remaining time displays for all tasks 2020-05-24 18:10:08 +10:00
itsmattkc 4c4bcb0989 moved simple ms to hh:mm:ss function to timecodefunctions 2020-05-24 17:40:30 +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 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 cb383d760b tasks now emit floats rather than integers
Simplifies code for tasks.
2020-05-19 02:44:38 +10:00
itsmattkc b9cd83eff1 task: massively simplified task system
Made various changes and fixes to the task system:

- Tasks are built around QtConcurrent rather than QThread. Reduces
  code complexity significantly.
- Task error reporting is now streamlined in both TaskManager and
  TaskDialog.
- Moved ProjectImport/Save/LoadManager to the app/task folder
2020-05-19 02:44:32 +10:00
itsmattkc 863ae1b913 a first attempt at a new render system 2020-05-14 14:43:03 +10:00
itsmattkc d653070a9d slider: reviewed and conformed code 2020-05-09 18:53:00 +10:00
itsmattkc cd5a6a6b78 Merge branch 'slider' of https://github.com/ThomasWilshaw/olive into ThomasWilshaw-slider 2020-05-09 18:36:03 +10:00
itsmattkc 6988436753 preferences: added minimums to cache ahead/behind
Fixes sobotka/Olive#114
2020-05-08 12:53:05 +10:00
Thomas Wilshaw cb1127936a Implement Alt Click to default on sliders
The following sliders now have Alt Click functionality:
 - Nodes (What it's initialy set too or 0 if not)
 - Export Dialog Dimensions~ (Defaults to Sequence width/height)
 - Export Compression Settings~
    - Advanced (0)
 - Speed/Duration
    - Speed (100%)
    - Duration (clip length)
 - Stream Properties Image sequence
    - Start Index (1)
    - End Index (sequence length)

Sliders with no default value set ignore an Alt
Click.

Added SliderBase::SetDefaultValue() which sets the
default value of a slider.

Added ValueReset() to SliderBase signals which is
called if a slider is Alt Clicked on. Only updates
if default_value_ is not Null.
2020-05-07 22:14:37 +01:00
itsmattkc 3da9643da2 Squashed commit of the following:
commit 8e06ded5769a41294d1f6645b1442634d2f503ff
Author: itsmattkc <itsmattkc@gmail.com>
Date:   Thu May 7 03:18:39 2020 +1000

    updated widget layout consistency

commit ba0ef33d56af23ccb611bc10293bd6cd0a52f250
Merge: 0f306550 9a4f7b54
Author: itsmattkc <itsmattkc@gmail.com>
Date:   Thu May 7 03:12:12 2020 +1000

    Merge branch 'pp_tabs' of https://github.com/ThomasWilshaw/olive into ThomasWilshaw-pp_tabs

commit 9a4f7b546eb096c64de16ab6ea9d942963ac9ae2
Author: Thomas Wilshaw <thomaswilshaw@gmail.com>
Date:   Mon May 4 23:56:26 2020 +0100

    Tabify Project Properties

    Move the project properites from boxes to tabs.
2020-05-07 03:19:25 +10:00
Thomas Wilshaw df97a86dbc Fix first usable stream being selected
Footage Properties should always select the first usable stream. Commit 1fa3f4e
didn't quite fix this with all footage. This should.
2020-05-05 22:32:11 +01:00
itsmattkc c6213b32ad Merge branch 'nodeviewredux' 2020-05-05 23:47:33 +10:00
itsmattkc af994cd1b6 preferences: added preference for node color scheme 2020-05-05 23:47:03 +10:00
itsmattkc 911ef782f9 colormanager: always temporarily set C locale when loading an OCIO config from file
Fixes known bug in OCIO when loading files from non-English locales.
2020-05-05 14:48:09 +10:00
itsmattkc 1fa3f4edb4 footageproperties: auto-select first usable stream (fixes #105) 2020-05-04 02:09:52 +10:00
itsmattkc a925476c3f began work on exr proxy task 2020-05-03 05:23:36 +10:00
itsmattkc 4f23db02db preferences: removed integer quality modes 2020-05-02 15:36:35 +10:00
itsmattkc 8c8bb45f7f crashhandler: include git commit hash with crash report 2020-05-01 02:11:26 +10:00
itsmattkc 1f76c33f6b crashhandler: include git commit hash 2020-05-01 02:09:59 +10:00