Commit Graph

299 Commits

Author SHA1 Message Date
Jonathan Thomas
fb879a4e46 Merge branch 'develop' into clip-refactor-keyframes
# Conflicts:
#	include/Clip.h
#	include/ReaderBase.h
#	include/Timeline.h
#	src/Clip.cpp
#	src/FFmpegReader.cpp
#	src/QtImageReader.cpp
#	src/ReaderBase.cpp
2020-10-05 23:14:44 -05:00
Jonathan Thomas
f9a717ef4b Large refactor of Timeline, TimelineBase, ClipBase, and Clip, to allow a Clip access to the parent timeline instance (if available), and thus, certain properties (preview size, timeline FPS, etc...). This allows for a simpler rendering of Clip keyframes (during the Clip::GetFrame method), and a simpler Timeline class, that can change the preview window size dynamically and no longer requires a Singleton Settings class.
- Also removed "crop" from Clip class, as it was never implmeneted correctly, and we have a fully functional "crop" effect when needed
 - Added caching to Clip class, to optimize previewing of cached frames (much faster than previous)
2020-10-04 16:59:21 -05:00
Jonathan Thomas
9c35e554a9 Merge pull request #565 from OpenShot/fix-pts-offset-logic
Fix the PTS offset logic error when first reading a file with FFmpegReader
2020-09-12 17:18:52 -05:00
Jonathan Thomas
7dc9eb6927 Adding TODO for future improvements 2020-09-12 17:05:33 -05:00
Jonathan Thomas
650adf639d Fix the PTS offset logic error when first reading a file on FFmpegReader. Use the calculated 0 - PTS, unless it is too large (more than 1 second off from zero) 2020-09-11 00:55:50 -05:00
Frank Dana
131e441d98 Merge pull request #563 from ferdnyc/timeline-lookup-api
Timeline: Add clip/effect lookup api, GetMaxFrame/GetMaxTime method (w/ unit tests)
2020-09-10 19:06:44 -04:00
Frank Dana
e500cae9f5 Replace sleep()/usleep() with std::chrono calls (#473) 2020-09-02 02:07:54 -04:00
FeRD (Frank Dana)
bd90b8d6c9 ReaderBase: Deprecate SetClip/GetClip names
- Replacement method names are SetParentClip/GetParentClip
- Old names are retained as deprecated alternates, for now
- libopenshot internal calls (very few) are updated

ReaderBase.cpp: Remove (Set,Get)Clip
2020-09-01 23:05:04 -04:00
Frank Dana
6336f30ee3 Various: Remove unused variables (#467)
Several data members and local variables were flagged by static
analysis tools as never being used anywhere in the code.
2020-04-22 02:02:55 -04:00
Frank Dana
12dd4d150a Merge pull request #448 from SuslikV/ffmpeg-like-fps
Change frame rate detection
2020-03-27 10:29:04 -04:00
SuslikV
dff42011ff Restore default gain when adding audio
Incorrect conversion of float to int16_t caused distortion that was
mistakenly perceived as clipping. Now because the convertion was fixed,
there is no more sense to reduce input gain of the source.
2020-03-16 14:49:41 +02:00
Jonathan Thomas
4f591c7b94 Merge pull request #396 from ferdnyc/json-parsing
Behind-the-scenes code tidying for Json data handling
2020-02-27 15:32:05 -06:00
SuslikV
e7bd91814a Change frame rate detection
Make FPS detection of the input file similar to the FFmpeg's own
re-encoding algorithm.
2020-02-27 12:53:56 +02:00
FeRD (Frank Dana)
e74d71f545 FFmpegReader/Writer: limit hwaccel to FFmpeg 3.4+
Add a new #define HAVE_HW_ACCEL, which is only set on FFmpeg 3.4+,
and use that to restrict the use of hw-accel features, leaving
IS_FFMPEG_3_2 to determine only whether code is compatible with
FFmpeg 3.2+.
2020-02-10 01:50:31 -05:00
Frank Dana
8ea7449363 Merge branch 'develop' into json-parsing 2020-01-20 15:25:40 -05:00
Jonathan Thomas
187b2055dd Preventing crash where last_video_frame is NULL 2020-01-08 00:09:01 -06:00
FeRD (Frank Dana)
22bf6edfba Enhance Json data handling
- Parsing from string to Json::Value is now done by utility function
  openshot::stringToJson() in Json.cpp, all SetJson() methods call it.
- Expand use of const member functions and args where appropriate.
- Use std::to_string() to format int/float values as strings.
- Correct mentions of nonexistent Json::JsonValue type in docstrings
2019-12-27 08:51:51 -05:00
FeRD (Frank Dana)
bd4d2bfdc4 Cover all values in switch(enum_type) 2019-12-15 12:40:32 -05:00
Jonathan Thomas
d6a4cb1dec Moving back to SWS_BICUBIC for high quality mode (during export mostly). This provides a sharper image when enlarging images than SWS_LANCZOS, and only has a slight performance disadvantage. 2019-11-17 16:34:50 -06:00
Frank Dana
8bde07682c Merge branch 'develop' into std-prefixes 2019-10-22 21:00:27 -04:00
Jonathan Thomas
d49dddf79a Merge pull request #326 from ferdnyc/hwaccel-testing
Some minor fixes made while testing hwaccel
2019-10-22 18:31:03 -05:00
Jonathan Thomas
9e674ce6c6 Merge pull request #338 from ferdnyc/map-tweaks
FFmpegReader::CheckMissingFrame -- checked_frames std::map tweaks
2019-10-22 17:24:17 -05:00
Frank Dana
ca885d59e0 Merge pull request #315 from ferdnyc/exception-default-args
Exceptions: Make (most) file_path args optional
2019-10-11 21:46:43 -04:00
Frank Dana
be24c58a03 Merge pull request #312 from ferdnyc/detect-interlace
FFmpegReader: Detect interlaced video on file open
2019-10-11 21:44:14 -04:00
FeRD (Frank Dana)
e070d04796 FFmpegReader::CheckMissingFrame std::map tweaks 2019-10-02 00:18:47 -04:00