Thomas Goyne
6fad60e58d
Use NSDMIs where applicable
2013-12-11 18:50:12 -08:00
Thomas Goyne
a1d44cafc1
Redesign VideoFrame
...
Eliminate the manual memory management and shuffle around where the
copies are made to eliminate the need for non-owning video frames.
2013-07-01 18:35:09 -07:00
Thomas Goyne
090905056b
Remove spaces in > > in nested templates
2012-12-11 10:58:28 -08:00
Thomas Goyne
91fa11e375
Relicense all of my stuff that's still 3-BSD to ISC
2012-12-02 13:14:24 -08:00
Thomas Goyne
96cf5ea7ed
Kill the #ifndef AGI_PRE guards
...
They don't actually improve compilation performance and make it more
annoying to modify what things are in the precompiled header.
2012-12-02 06:33:29 -08:00
Thomas Goyne
06aaaff16b
NULL -> nullptr
2012-11-13 08:51:01 -08:00
Thomas Goyne
67df64e879
Use range-based for loops in a bunch of places
2012-11-12 18:35:25 -08:00
Thomas Goyne
e44c47c863
Remove $Id$ markers since git doesn't support them
2012-10-25 17:39:49 -07:00
Thomas Goyne
53433426bb
Fix some stuff from Coverity Scan
...
Mostly just bugs in unreachable code and stylistic things, but there's a
few incorrect reachable things that were working by coincidence and
gratuitous dynamic_casts.
2012-10-15 18:16:09 -07:00
Thomas Goyne
a13d06318b
Remove all glu.h includes since no glu functions are ever used. Updates #1511 .
2012-10-08 10:21:20 -07:00
Thomas Goyne
ef3e75dbe9
Pass the row length rather than frame width to OpenGL for the unpack row length
...
Originally committed to SVN as r6937.
2012-07-21 03:50:38 +00:00
Thomas Goyne
45dbc8bd15
Fix checks for which OpenGL headers to include on OS X
...
Originally committed to SVN as r6511.
2012-02-23 19:28:08 +00:00
Thomas Goyne
88b536f824
Make VideoOutGL's error checking even more completely overboard
...
Originally committed to SVN as r5904.
2011-11-23 18:32:50 +00:00
Amar Takhar
75b732bf60
Use lowercase filenames for OS X includes. HFS is case-insensitive and since I'm cross-compiling the OS X version from Linux it fails when you try to include files using uppercase names when they're actually lowercase.
...
Originally committed to SVN as r5173.
2011-01-11 17:52:17 +00:00
Thomas Goyne
824294078f
Move YUV -> RGB conversion to VideoProviderYUV4MPEG and remove support for formats other than RGB32 from AegiVideoFrame
...
Originally committed to SVN as r5079.
2010-12-31 21:03:11 +00:00
Thomas Goyne
3c02917e20
Fix flipped video when switching between avs and ffms2 providers
...
Originally committed to SVN as r4814.
2010-10-16 20:11:43 +00:00
Thomas Goyne
58ca596359
Define NOMINMAX on Windows and remove workarounds for problems caused by those macros.
...
Originally committed to SVN as r4732.
2010-08-12 06:39:49 +00:00
Amar Takhar
d295ce7b0a
Convert a bunch of wxLog* to the new logging method.
...
Originally committed to SVN as r4399.
2010-06-01 08:21:30 +00:00
Amar Takhar
40e12403d5
Merge all changes from the libaegisub branch into trunk, the effective range is r4175:4330. All options have been re-done and now use Cajun to support a json-backed format.
...
Initial support for low-level access and file I/O methods are included as well.
Originally committed to SVN as r4331.
2010-05-21 01:13:36 +00:00
Thomas Goyne
2c876e79c3
Make visual tools use only screen coordinates.
...
Previously the visual typesetting tools and the overlay mask used
several coordinate frames, converting between them in many places in
inconsistent ways. This elimiates all uses of coordinate frames other
than screen and script, and makes the conversion done in one place, and
only when parsing or serializing ASS.
This fixes:
- A few minor rounding errors
- Horrible brokeness when only part of the video frame is being
displayed, due to higher levels of zoom than fit onscreen or panning
the video
- Distortion of the visual typesetting tools when the combination of
overridden aspect ratio, script resolution, and video resolution did
not result in square pixels.
- Resolution-dependence of the visual typesetting tools, which resulted
in some tools becoming hard to use at zooms outside the range of
100-200%.
- Some draggable controls used the mouse's script coordinates,
resulting in noticable jerky movement at high zoom levels or when
using strange script resolutions.
Closes #966 .
Originally committed to SVN as r4289.
2010-05-16 06:39:11 +00:00
Thomas Goyne
47beda4c89
Fix build error introduced in r4250 when not using precompiled headers.
...
Originally committed to SVN as r4251.
2010-04-30 16:15:12 +00:00
Thomas Goyne
fd701c67ec
Kill supportsGlClampToEdge, which hasn't actually been used for a while
...
Originally committed to SVN as r4248.
2010-04-30 03:00:09 +00:00
Thomas Goyne
b90fdcc111
Make the video display use OpenGL display lists, slightly simplifying the code and reducing the amount of state explicitly tracked.
...
Originally committed to SVN as r4247.
2010-04-30 03:00:04 +00:00
Thomas Goyne
621cefe14e
Fix compile error on non-windows caused by r4097.
...
Originally committed to SVN as r4099.
2010-02-14 18:06:56 +00:00
Thomas Goyne
175b2a4648
Rewrite the texture grid positioning code again, fixing several visual defects that showed up in OpenGL 1.1 mode. Updates #1153 .
...
Originally committed to SVN as r4097.
2010-02-14 17:41:41 +00:00
Thomas Goyne
7ffc3d4080
Move more of the purely OpenGL-related code into VideoOutGL from VideoDisplay and simplify the calculation of the texture grid positions slightly.
...
Originally committed to SVN as r4037.
2010-01-24 19:05:20 +00:00
Thomas Goyne
2f2f0d9aac
Fix some assorted VideoOutGL-related stupidity. Updates #1056 .
...
Originally committed to SVN as r3864.
2009-12-13 19:27:45 +00:00
Thomas Goyne
86f64b2962
Improve video operation errors somewhat. Updates #1020 .
...
Originally committed to SVN as r3835.
2009-12-01 00:32:43 +00:00
Thomas Goyne
15cf221a3f
Fix incorrect handling of flipped video when the texture size is larger than the video size.
...
Originally committed to SVN as r3742.
2009-10-27 20:59:27 +00:00
Thomas Goyne
dcfdb02e6c
Significantly reduce the number of unnecessary calls to VideoContext::GetFrame.
...
Originally committed to SVN as r3739.
2009-10-27 14:27:39 +00:00
Thomas Goyne
4fc2b90399
Add support for externally controlled frame data to AegiVideoFrame, and take advantage of this in the FFMS2 video provider to eliminate a copy of the frame data. Net speedup for seeking from beginning to end of several test files is 10-20%.
...
Originally committed to SVN as r3729.
2009-10-24 02:07:56 +00:00
Thomas Goyne
df5ada1006
Make the video display only upload texture data when the frame has changed rather than every time Render is called.
...
Originally committed to SVN as r3726.
2009-10-20 19:07:18 +00:00
Thomas Goyne
5404b45017
Tweak how the OpenGL 1.1 code behaves slightly; distortion with Windows 7's OpenGL emulation is now at most .1% instead of at most 2%.
...
Originally committed to SVN as r3723.
2009-10-19 01:11:02 +00:00
Thomas Goyne
5b9da0c56a
Fix some video output bugs related to a small maximum texture size which is not an even divisor of the video size.
...
Originally committed to SVN as r3717.
2009-10-17 03:41:12 +00:00
Thomas Goyne
3d58608230
Improve rendering with OpenGL 1.1, removing the visible seams at the cost of slight distortions at high zoom levels.
...
Originally committed to SVN as r3714.
2009-10-14 20:53:36 +00:00
Thomas Goyne
9ff8f42d7f
Get the video display closer to working with W7's emulated OpenGL. It can now display video, but there are visible seams between the textures.
...
Originally committed to SVN as r3711.
2009-10-13 22:19:31 +00:00
Amar Takhar
14e2d9ad12
Add config.h to 8 files that were missing it, _all_ source files must include config.h at the very top.
...
Originally committed to SVN as r3666.
2009-10-09 16:34:38 +00:00
Amar Takhar
9217476357
Bitten by precompiled headers round 2: the OpenGL headers must be included before the local headers.
...
Originally committed to SVN as r3631.
2009-10-06 16:08:39 +00:00
Amar Takhar
ac260ec47b
Sigh, bitten by precompiled headers, wxLogDebug requires <wx/log.h>.
...
Originally committed to SVN as r3630.
2009-10-06 15:47:43 +00:00
Amar Takhar
c204c766ec
Add two more debug printfs:
...
* Print the WxH of the frame size.
* Print the size of the texture actually used.
Originally committed to SVN as r3629.
2009-10-06 15:28:22 +00:00
Amar Takhar
bb4506354f
Add a debug printf to display what texture sizes VideoOutGL::TestTexture is checking.
...
Originally committed to SVN as r3628.
2009-10-06 14:58:32 +00:00
Amar Takhar
21c5e7909c
svn:eol-style native and svn:keywords Id to relevent files.
...
Originally committed to SVN as r3623.
2009-10-05 23:04:30 +00:00
Thomas Goyne
404e6cf081
Add support for flipped video to new video renderer.
...
Originally committed to SVN as r3617.
2009-10-05 20:50:04 +00:00
Thomas Goyne
cbd76e7010
Rewrite the video rendering code to support displaying videos which are larger than the maximum texture size. This does not currently support YV12 (which Aegisub currently never uses), but should be otherwise functional.
...
Originally committed to SVN as r3615.
2009-10-05 04:22:28 +00:00