Commit Graph

242 Commits

Author SHA1 Message Date
jackson
af1117b244 Subtract the start value from the timeline frame number. 2022-09-14 13:37:20 -05:00
jackson
7ebe9a9b75 Adding comment for clarity. 2022-04-29 12:55:50 -05:00
jackson
5ac659a16f Correct the frame number after mapping frame 2022-04-29 12:55:50 -05:00
jackson
7b6df2093d Apply keyframes based on the frame of the clip, rather than frame of the file. 2022-04-29 12:55:50 -05:00
JacksonRG
0bf991601d Revert "Only map key numbers to time once" 2022-03-21 19:23:35 -05:00
JacksonRG
a505443283 Merge pull request #815 from OpenShot/fix-time-keyframes
Only map key numbers to time once
2022-03-21 17:58:29 -05:00
jackson
132c2df270 Only map key numbers to time once 2022-03-16 21:58:09 -05:00
Jonathan Thomas
a8e9c95fea Silence openshot::Frame audio when requesting a Clip::GetFrame() past the end of the Clip's Reader. For example, if a Clip has 1000 frames, and the user requests frame 1001, we will return the last cached openshot::Frame object, but we don't want to repeat the audio samples (causing a stutter). Any frame past the end of the reader, should always silence the audio samples. Also, fixed a few invalid comments, and added a Unit test. 2022-03-02 16:24:09 -06:00
Jonathan Thomas
fbd0ecfc83 Merge branch 'develop' into caching-timing-improvements 2022-02-13 10:59:27 -06:00
Jonathan Thomas
133bae40c3 Adding pre-roll to VideoCacheThread, and making video & audio threads wait for the isReady() method before playing. Also fixed an audio bug where our internal buffer was not being cleared on seek. Removed some unused caching from Clip, and did some minor refactor on FrameMapper/Clip cache clearing. 2022-01-26 17:56:33 -06:00
FeRD (Frank Dana)
806052f9c8 Clip, Timeline: Reformat logging calls 2022-01-12 11:02:52 -05:00
Jonathan Thomas
9eda757885 Merge branch 'develop' into audio-devices
# Conflicts:
#	src/AudioBufferSource.cpp
#	src/AudioReaderSource.cpp
#	src/AudioReaderSource.h
#	src/Clip.cpp
#	src/Frame.cpp
#	src/Qt/AudioPlaybackThread.h
#	src/audio_effects/Compressor.h
#	src/audio_effects/Delay.h
#	src/audio_effects/Echo.h
#	src/audio_effects/Expander.h
2021-12-02 22:05:19 -06:00
FeRD (Frank Dana)
59108504e3 Code changes for compatibility with JUCE 6.x
- Replace all juce::CriticalSection with std::recursive_mutex
- Replace all juce::AudioSampleBuffer with juce::AudioBuffer<float>
- Eliminate implicit reliance on 'using namespace juce;'
- Replace OpenShotAudio.h includes with targeted juce modules
2021-11-09 06:22:25 -05:00
FeRD (Frank Dana)
fe58e8028d Move some headers around 2021-11-01 11:04:31 -04:00
FeRD (Frank Dana)
9133389b92 Clip: Fix has_video, add unit test 2021-10-27 00:26:56 -04:00
Frank Dana
59138ea3e4 Adopt license management via Reuse project/tool (#711)
* reuse-managed license/copyright headers

reuse is a tool for compliance with the REUSE recommendations. See
<https://reuse.software/> for more information, and
<https://reuse.readthedocs.io/> for the online documentation.

* Set jsoncpp license
* Add MIT license for Decklink sources
* Explicitly license examples/
  - Add headers to source files
  - Change blanket licensing in .reuse/dep5 to only cover binary media
  - Import CC-BY-3.0 license and assign to sintel_trailer
2021-10-16 01:26:26 -04:00
Jonathan Thomas
15e5285206 Support for anamorphic profiles, i.e. non-square pixels. Fixes include Frame::Display, Frame::Save, and Timeline::SetMaxSize, all which had various issues. Added sample_aspect_ratio to FFmpegWriter, so the exported videos will continue to be anamorphic.
Also fixed some waveform issues, which were not appearing, or appearing squished, and sometimes containing gaps.
2021-10-07 13:45:16 -05:00
FeRD (Frank Dana)
76fb7c8013 Rename AudioSampleBuffer to AudioBuffer<float>
For a long time now, juce::AudioSampleBuffer has been nothing but an
alias for its true (templated) type, AudioBuffer<float>.
2021-08-24 13:11:00 -04:00
Jonathan Thomas
1c2786de35 SCALE_NONE was incorrectly sizing SVG, Image, and Video files. Since OpenShot changes the preview window size during editing, the SCALE_NONE clips should always be scaled to the ratio: preview / timeline... so they stay relative sized to the timeline size.
For example, if an SVG is 500px wide, and the project is 1000px wide... the SVG in SCALE_NONE mode should always be 50% with width of the video, regardless of how small you make the preview window.
2021-08-11 12:10:46 -05:00
Jackson
92b62517a6 removed comment with number 2021-07-07 15:29:42 -05:00
Jackson
b7d71cdc52 Only get rotation from metadata if 0 keyframes 2021-07-01 12:08:27 -05:00
Frank Dana
0b783ee507 Clip: Restore property choice names (#681) 2021-06-02 15:45:43 -04:00
Brenno
cd7d6fe00c Merge remote-tracking branch 'origin/develop' into effect-parenting 2021-05-24 11:01:28 -03:00
Jonathan Thomas
a505f875d1 Refactoring timeline_frame_number out of apply_layer() and TimelineInfoStruct, we already have this data in scope (on the background frame instance) 2021-05-20 13:15:13 -05:00
Jonathan Thomas
441cb186f6 Refactor of global timeline effects, to address a regression with global/timeline Mask/Transitions no longer working correctly. This was caused by an optimization that broke the general behavior of the global transitions. 2021-05-18 14:25:36 -05:00