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
Brenno
2c9d2f2a32
OpenCV is again an optional dependency
2021-04-15 22:05:35 -03:00
Brenno
2cf2c55f9b
Changed None to empty string, corrected dynamic pointers
2021-04-12 21:32:27 -03:00
Brenno
65e33a5b77
Renamed "Parent Object ID" to "Parent"
2021-03-26 21:50:41 -03:00
Brenno
8b861f0ff3
Merge remote-tracking branch 'origin/develop' into effect-parenting
2021-03-02 20:35:25 -03:00
Jonathan Thomas
8280e20aa5
Implementing Codacy improvements, removing some unused or pointless code
2021-02-18 18:07:07 -06:00
Jonathan Thomas
0e30ecccfd
Removing caching from Clip object. Causes too many issues and does not add any performance (in my tests)
2021-02-18 16:14:14 -06:00
Jonathan Thomas
66eb3d5ed6
Disabling Clip caching and fixing a bug with waveform()
2021-02-17 20:40:32 -06:00