Commit Graph

121 Commits

Author SHA1 Message Date
Jonathan Thomas
d58cfec0ca Added a simple X,Y offset, to speed up basic overlays. 2012-11-13 22:07:49 -06:00
Jonathan Thomas
73be628047 Replaced the opacity() method with the IM quantumOperator method, which allows me to simply multiply the alpha percentage to each alpha value, and fixed a bug in the ImageReader which prevented copying pixel data between frames. 2012-11-13 00:11:20 -06:00
Jonathan Thomas
bff37d0072 Added in openMP code to improve performance on the timeline layer merging, which is very CPU intensive. 2012-11-12 17:21:21 -06:00
Jonathan Thomas
d47a94f1a0 Added gravity, scale type, and percentage based X,Y location settings. All the basic transformation methods are now working. You can layer, move, fade, snap, rotate, and scale clips on the screen. 2012-11-12 01:25:35 -06:00
Jonathan Thomas
ed2469e724 Integrated sub-pixel positioning using the distort operator. Not quite working yet. 2012-11-08 18:02:20 -06:00
Jonathan Thomas
5b77abdf27 The timeline classes are finally working correctly, and have the following features:
1) Layers (unlimited # of layers)
2) IN, OUT, and Position (time)
3) X, Y offset
4) Alpha
5) Rotation
6) Transparency + compositing + overlays
2012-11-08 04:35:21 -06:00
Jonathan Thomas
42d7565ba1 Integrated more timeline code, such as compositing layers... but they don't work yet 2012-11-07 17:45:13 -06:00
Jonathan Thomas
bc11635731 Made a few fixes to the frame mapper 2012-10-30 18:53:26 -05:00
Jonathan Thomas
7fe9008cad Added a new "smooth" slow motion, using the time map fraction to dissolve the next frame into the current one. 2012-10-29 01:47:39 -05:00
Jonathan Thomas
6e9f2a6a9b Changed audio and video PTS to start at 0, and it fixed the final issues I have had with generating valid videos in multiple codecs. 2012-10-28 23:38:24 -05:00
Jonathan Thomas
aab257402d Fixed bug which froze the FFmpegReader when caching 1080p video. 2012-10-28 23:06:10 -05:00
Jonathan Thomas
7dd94a02e4 Added code to flush the encoders, and also write the final frame's audio samples 2012-10-28 03:35:50 -05:00
Jonathan Thomas
60ffebe1fe Replaced avcodec_encode_audio with avcodec_encode_audio2, and completely redid the way PTS values are calculated and set. Another nice improvement! 2012-10-27 21:36:08 -05:00
Jonathan Thomas
a34902f0f5 Removed some unneeded code in the FFMpegWriter 2012-10-24 11:10:35 -05:00
Jonathan Thomas
bfa1ec82eb Fixed a problem with audio time map deltas, and being slowed down instead of sped up 2012-10-23 11:13:06 -05:00
Jonathan Thomas
651993ff60 Fixed a bug in the regression in the FFmpegReader class, which prevented frame 1 from loading 2012-10-22 23:59:36 -05:00
Jonathan Thomas
612bb25f5f Fixed the FFMpegReader to discard the first audio and video frames it finds after a seek, since they sometimes are missing information. This fixed many issues with the time mapping curves and audio reversing and fast forwarding. 2012-10-22 17:05:34 -05:00
Jonathan Thomas
082efa23cc Fixed more audio sample issues with time mapping 2012-10-21 17:51:37 -05:00
Jonathan Thomas
b74e97c7d2 FIxed some big audio bugs, and finally got the audio reversing correctly working. Now, audio waves are reversed when a time map is moving backwards. There are still some pops and crackles, but I'll fix those later. 2012-10-21 05:29:29 -05:00
Jonathan Thomas
19612f63bd Fixed some bugs with the new Keyframe system, and now it generates the correct values. 2012-10-19 21:50:50 -05:00
Jonathan Thomas
9d97ecb6d2 Improved the Keyframe and Coordinate classes, to also track the direction and a fraction representing the number of times a frame is repeated. This will allow the time mapping to slow down audio and reverse the waveforms when necessary. 2012-10-19 16:53:18 -05:00
Jonathan Thomas
5e5ca2a55c Fixed a big bug on frame rate mapping, due to incorrect # of samples being copied into the new frame. Also, implemented interalacing support, and full pulldown support (in the frame mapper). 2012-10-18 02:58:09 -05:00
Jonathan Thomas
129a2fccd7 Many experimental changes, including a new FrameMapper that is based on FileReaderBase, and lots of debug code. 2012-10-17 09:57:02 -05:00
Jonathan Thomas
a57b81a734 Added a new DummyReader, which can be given any framerate, samplerate, width, height, etc... and used in unit tests, such as the FrameMap unit tests. 2012-10-16 16:45:31 -05:00
Jonathan Thomas
b78fca6090 Refactor of FrameMapper, and added in audio sample remapping.. 2012-10-15 17:45:20 -05:00