Commit graph

196 commits

Author SHA1 Message Date
Niels Martin Hansen 51c36f2803 Close #491 (again), force the min-size of the detached video to be (1,1) after creation and layout.
Originally committed to SVN as r3024.
2009-06-06 14:36:22 +00:00
Niels Martin Hansen 6e144e6589 Fix #491: Let the detached video dialogue take a parameter indicating the initial video size.
Originally committed to SVN as r3023.
2009-06-06 02:57:42 +00:00
Niels Martin Hansen d56b5b1bf6 Fix #598, repaint the audio display upon playback to get rid of any junk on it.
Originally committed to SVN as r3022.
2009-06-06 02:32:31 +00:00
Niels Martin Hansen 0f2d39e28f Fix #787, make the Paste and Paste Over commands in the Edit menu sensitive to the current format on the clipboard and only enable them if plain text is a supported format. They will also be enabled if the clipboard fails to open, as a safety device.
Originally committed to SVN as r3021.
2009-06-06 02:16:20 +00:00
Niels Martin Hansen c0586f690c Close #861, remove colour dropper tool on non-Windows platforms for now.
Originally committed to SVN as r3020.
2009-06-06 01:59:33 +00:00
Niels Martin Hansen 4b41b4ca4a Fix #607: Have style editor save its position and size during the session, similar to how several other dialogues already do. The stored position is not persistent, it is lost when Aegisub is closed.
Originally committed to SVN as r3019.
2009-06-05 02:02:55 +00:00
Niels Martin Hansen c74a02e57d Clean up code in Style Editor a bit, remove no longer needed performance measurement code.
Originally committed to SVN as r3018.
2009-06-05 01:49:06 +00:00
Niels Martin Hansen 2feefd85fd Close #839, the Shift Times function will now only do something if shifting by a non-zero number of milliseconds, or always if shifting by a number of frames (even zero).
Originally committed to SVN as r3017.
2009-06-05 00:02:26 +00:00
Niels Martin Hansen ce015fc820 Add sample endianness info to all audio providers (except one, intentionally; see the stream provider changeset), and make the converting audio provider convert to native endian when required. Updates #725 but needs some testing. Might break compilation in some places, but shouldn't. ("Works for me.")
Originally committed to SVN as r3016.
2009-06-04 23:02:29 +00:00
Niels Martin Hansen 88a5335004 Adjust calculation of secondary colour for checkerboard pattern in dummy video provider. New calculation produces better results for dark colours, the old calculation produced very high contrast patterns for dark colours.
Originally committed to SVN as r3015.
2009-06-04 02:28:46 +00:00
Niels Martin Hansen 26ac4e65f8 Another shot at fixing wxGLCanvas woes on Mac, updates #850. This time the code is also considerably simpler!
Originally committed to SVN as r3014.
2009-06-04 02:05:11 +00:00
Niels Martin Hansen d6a8a07845 Experimental stuff trying to fix wxGLContext errors on Mac, updates #850. Untested, might break build for Mac.
Originally committed to SVN as r3013.
2009-06-04 01:35:11 +00:00
Niels Martin Hansen 390fb2d03c Remove all traces of local configuration support ("portable application") in non-Windows builds. Closes #856.
Originally committed to SVN as r3011.
2009-06-03 23:42:47 +00:00
Niels Martin Hansen 4b986b5a53 Make the visual typesetting toolbar a bit prettier on Vista and probably also Win7, by removing themed background that didn't blend in with the surroundings.
Originally committed to SVN as r3010.
2009-06-03 23:18:40 +00:00
Niels Martin Hansen f4939c082a Really fix detached video, closes #853.
Originally committed to SVN as r3009.
2009-06-03 23:08:40 +00:00
Niels Martin Hansen 6dc3015962 Work on fixing detached video, still broken but works a little better now. Updates #853.
Originally committed to SVN as r3008.
2009-06-03 23:01:03 +00:00
harukalover 614f2ef559 Fixed a memory leak that occurred when using undo/redo, fixes #330
Originally committed to SVN as r3007.
2009-06-03 19:55:39 +00:00
harukalover 1d55e6b7b2 Add some sanity checking to SelectRow to prevent an invalid row from being selected when undoing line insertions
Originally committed to SVN as r3006.
2009-06-03 19:04:54 +00:00
Niels Martin Hansen f13d23509a Fix #859, or rather work around it. There's no good way to detect problematic regexes like the example, and the regex engine lies in wx, so we'll have to do with what wx offers. Put a limit of at most 1000 replacements per line processed, that "should be enough for everyone", and avoids infinite looping.
(Also 3000 GET!)

Originally committed to SVN as r3000.
2009-06-01 15:44:59 +00:00
Niels Martin Hansen 386cc9d3cd Reword error messages introduced in r2998 to make it Aegisub's fault and not the graphics drivers'. Even if our code is technically correct, it's still our problem.
Updates #799.

Originally committed to SVN as r2999.
2009-06-01 15:29:22 +00:00
Niels Martin Hansen 60970e5f29 Add some error catching in the OpenGL code, this should make most OpenGL-related problems less fatal, though it can still cause funky UI problems I think.
At least the user should get a slightly more useful error message now.
Updates #799.

Originally committed to SVN as r2998.
2009-06-01 15:26:26 +00:00
Niels Martin Hansen da78539ab2 Make DSound2 audio player use dynamic latency trickery and only do streaming (looping buffer) playback for long playback durations. This should fix most if not all "could not lock buffer" errors and close #855.
Originally committed to SVN as r2997.
2009-06-01 14:53:18 +00:00
Niels Martin Hansen db27d770f6 Fix #599, the wrong overload for wxSpinCtrl::SetValue was used causing only the edit control part to be updated.
Originally committed to SVN as r2996.
2009-06-01 13:57:34 +00:00
Fredrik Mellbin ea80b6c130 Changes required to compile because of the previous commit
Originally committed to SVN as r2992.
2009-05-28 19:34:52 +00:00
harukalover dfdea0298b Revert r2965 and r2961, although they fixed the memory leaks they also caused a crash when closing either dialog under some operating systems
Originally committed to SVN as r2990.
2009-05-27 02:08:21 +00:00
Karl Blomster 379f15659a Do COM initialization more properly (I think) in the FFMS2 providers.
Originally committed to SVN as r2989.
2009-05-25 16:42:33 +00:00
Karl Blomster c8b125943c Update FFMS2 providers to initialize COM when running under Windows, as per the new FFMS2 init procedure.
Originally committed to SVN as r2986.
2009-05-25 15:52:42 +00:00
Niels Martin Hansen a1a4d797e7 Turn broken hotkeys.dat file into a non-fatal error. If the file is broken (usually meaning exists but empty) the existing file will now be copied to hotkeys.bak and the defaults restored and saved as hotkeys.dat.
Originally committed to SVN as r2982.
2009-05-24 23:19:28 +00:00
Fredrik Mellbin 3220a2301a FFMS2:
Simplify the avisynth filters
Small api change => you can now list a group of desired colorspace output formats for automatic selection, less functions can return errors
Less singnedness warnings

Originally committed to SVN as r2978.
2009-05-23 14:18:51 +00:00
Karl Blomster a3ad037940 Fix ffms2 providers to work with latest FFMS2 API changes.
Originally committed to SVN as r2974.
2009-05-22 21:44:02 +00:00
Niels Martin Hansen 2377b1455e Increase grabbing zone for karaoke split markers from 4 to 7 pixels, makes dragging much easier, speeding up work.
Originally committed to SVN as r2971.
2009-05-22 14:30:51 +00:00
harukalover 10a11ce0cc Fixed some of the larger memory leaks in the LibassSubtitlesProvider detected by valgrind
Originally committed to SVN as r2970.
2009-05-22 04:09:09 +00:00
harukalover 17f0e664f0 Initialize a variable in the audio display that sometimes was used without any initial value being assigned to it.
Originally committed to SVN as r2969.
2009-05-22 02:27:36 +00:00
Niels Martin Hansen ef4021f757 Make error handling in DSound2 audio player more robust. When an error happened in the playback thread, the error_happened flag was set, but was never cleared when the error was detected in the main thread. Furthermore, the main thread didn't act upon the error besides showing it, it kept acting as if the playback thread was still alive and playing, causing the error to be triggered continuously requiring you to kill Aegisub to get out.
Made the error_happened event reset itself after being checked so the check only succeeds the first time. (The playback thread returns from its threadproc upon error.) Mark playback thread as dead when error is detected, such that a new thread will be created next time playback is started, effectively making errors non-fatal.
Playback still works as expected, however I haven't tested what actually happens now when an error occurs.

Originally committed to SVN as r2968.
2009-05-22 01:41:31 +00:00
harukalover bceabf4848 Fixed some mismatched new[]/deletes in the audio display detected by valgrind
Originally committed to SVN as r2967.
2009-05-22 00:05:25 +00:00
harukalover fff437ea19 Fixed a memory leak in the CSRISubtitlesProvider
Originally committed to SVN as r2966.
2009-05-21 23:02:34 +00:00
harukalover b4a5032b2e Fixed some memory leaks in the kanji timer
Originally committed to SVN as r2965.
2009-05-21 22:57:43 +00:00
harukalover ecc4b618b3 Fixed a memory leak in the style manager, the storage of catalog styles was never being cleared when closed.
Originally committed to SVN as r2964.
2009-05-21 22:24:52 +00:00
harukalover acf2f5fa40 Fixed some memory leaks in the style manager detected by valgrind
Originally committed to SVN as r2963.
2009-05-21 22:15:32 +00:00
harukalover 68d2681193 Fixed a memory leak in the dummy video provider detected by valgrind. The video frame was being allocated but never deallocated.
Originally committed to SVN as r2962.
2009-05-21 19:49:23 +00:00
harukalover 350d9e5db7 Fixed some memory leaks in the translation assistant detected by valgrind
Originally committed to SVN as r2961.
2009-05-21 18:37:36 +00:00
Fredrik Mellbin 34c50c8cd9 FFMS2:
Split indexing into a 2 step process so track numbers/types become known in advance
Big code cleanup and renaming

Originally committed to SVN as r2955.
2009-05-20 18:57:03 +00:00
harukalover 083e2ee91c Initialized a variable that was being used before it was assigned an initial value
Originally committed to SVN as r2954.
2009-05-20 18:29:01 +00:00
Niels Martin Hansen 5bdcf2f63a Update #742, attempt fixing the bug. Removing wxEXPAND from some sizers, seems to work fine on Windows. Will test Mac build when tinderbox builds it.
Originally committed to SVN as r2953.
2009-05-18 23:37:41 +00:00
harukalover 6f0c5e6489 * Fixed some more memory leaks reported by valgrind and msvc by reimplementing a couple of singleton pattern based classes
* Fixed a memory leak that occurred from never deleting a wxBitmap allocated in OpenGLTextGlyph

Originally committed to SVN as r2952.
2009-05-18 05:51:37 +00:00
harukalover 392fbdfa4d Fix a bunch of memory leaks reported by valgrind and msvc about the registered factories never being cleared.
Originally committed to SVN as r2951.
2009-05-18 05:42:54 +00:00
harukalover 9891c28977 Add a corresponding PopEventHandler call for each PushEventHandler call, this fixes a couple of memory leaks reported by valgrind and msvc.
Originally committed to SVN as r2950.
2009-05-18 05:33:49 +00:00
harukalover f1bfb947cf Call TestDestroy() to ensure we can delete the FontsCollectorThread, fixes #561
Originally committed to SVN as r2949.
2009-05-18 05:24:07 +00:00
Karl Blomster 5717f81ef2 Update FFMS2 providers to account for FFMS2 API change in last commit.
Also update ffms2.lib to corresponding version.

Originally committed to SVN as r2948.
2009-05-17 22:12:46 +00:00
harukalover 008f7f3853 Prevent an out of range exception from being thrown. (was commonly being thrown when commit was used on the last row of the grid)
Originally committed to SVN as r2945.
2009-05-17 05:47:28 +00:00
Niels Martin Hansen ef407b6e68 Make FFmpegSource video and audio providers build again after FFMS2 changes last night.
Originally committed to SVN as r2944.
2009-05-16 12:47:23 +00:00
Niels Martin Hansen f6bd6df490 Hack to fix #687, if playing to end of audio, changing the selection end shouldn't affect the playback end: it should still play to end of audio.
Originally committed to SVN as r2939.
2009-05-15 15:23:34 +00:00
Niels Martin Hansen a6c7a8a724 Apply Plorkyeran's patch to close #843.
Originally committed to SVN as r2938.
2009-05-15 12:44:36 +00:00
Karl Blomster 5bb56ae5d4 Fix gcc breakage caused by last commit, and remove an unused variable while at it.
Originally committed to SVN as r2937.
2009-05-15 12:31:09 +00:00
Karl Blomster a3cd374bc0 Add a bit of sanity checking to FractionalTime.
Originally committed to SVN as r2936.
2009-05-15 12:18:33 +00:00
harukalover 1520e51dd0 Fixed Replace Next not marking the script as modified.
Originally committed to SVN as r2935.
2009-05-15 02:50:43 +00:00
Niels Martin Hansen 988df0ab81 Fix #809, properly close all SRT overrides during export and ensure overrides in recombined lines do not affect each other (per the example I gave in the report.)
Originally committed to SVN as r2934.
2009-05-15 01:34:00 +00:00
Niels Martin Hansen 44e17e9e11 Converting audio provider didn't know about channel count during bitdepth and samplerate conversion and intermixed samples from channels and more, resulting in garbage output. Fixes #726.
Originally committed to SVN as r2933.
2009-05-15 00:48:43 +00:00
Niels Martin Hansen 8ca726119f Fix #825 for good, I hope. Get some sense worked into the handling of AssEntry::StartMS and AssDialogue::Start using some private members and virtual getter/setter functions.
Originally committed to SVN as r2931.
2009-05-14 23:45:20 +00:00
Niels Martin Hansen fb6280b2e7 More const correctness in AssTime, broke build because I forgot to add const keyword to implementation too.
Originally committed to SVN as r2930.
2009-05-14 23:27:38 +00:00
Niels Martin Hansen 3977fff411 Const correctness in AssTime.
Originally committed to SVN as r2929.
2009-05-14 23:09:04 +00:00
Niels Martin Hansen 4e417a6dae Change audio autoscroll behaviour:
* In karaoke mode, instead of scrolling start to end of active line into view, scroll start of selection to end of line into view. This gives sensible results when horizontal zoom is great enough that the entire line isn't visible at once and the syllable is too far from the start of the line. This fixes #677.
* If the line is too long to fit in the display, always left-align it instead of sometimes left-aligning and sometimes centering. (I think the old behaviour depended on the actual scroll position.)

Originally committed to SVN as r2928.
2009-05-14 22:12:05 +00:00
Niels Martin Hansen 84b068b53a Undo last change, code *was* used after all. Strangely my compiler didn't complain on first try...
Removing the comment about "is this even used?" as well...

Originally committed to SVN as r2927.
2009-05-14 21:44:43 +00:00
Niels Martin Hansen cab268c9bb Remove some unused code from karaoke UI.
Originally committed to SVN as r2926.
2009-05-14 21:26:39 +00:00
harukalover 1cc280216c * Fixed a mismatched new[]/delete
* Fixed a memory leak that would occur when loading subtitles from a matroska file

Originally committed to SVN as r2924.
2009-05-14 18:28:57 +00:00
harukalover ce15bc55bc * Fixed the styling assistant marking the script as modified when it was unfocused and the Enable preview checkbox was unchecked even if no changes actually were made in the styling assistant.
* Removed some no longer needed code in the styling assistant.

Originally committed to SVN as r2923.
2009-05-14 17:29:07 +00:00
harukalover f4808b82a0 Made the styling assistant modeless so the user can access other controls within aegisub without having to close the styling assistant, fixes #397
Originally committed to SVN as r2921.
2009-05-14 07:02:01 +00:00
Karl Blomster ffa5a2021d - Reworked the SMPTE timecode handling with Plorkyeran's help. It does now handle dropframe timecodes as well; the ms->SMPTE handling has been tested and seems reasonably correct, while the reverse conversion remains untested and unused. The Adobe Encore export filter will now use dropframe timecodes properly (previously it would play pretend with wallclock hours/minutes/seconds and incorrect frame numbers).
- Changed the SubtitleFormat::AskForFPS dialog box; removed the "PAL/NTSC only" choice and added a "show SMPTE dropframe" parameter instead. Also added 50fps as a choice.

- While I was at it, reworked the TranStation export filter so it actually looks ahead to see if the next line will overlap with the current, and if so, move the end time of the current line backwards one frame, which fixes #767

Originally committed to SVN as r2920.
2009-05-13 20:24:21 +00:00
Niels Martin Hansen 3ddf48665a Apparently not all platforms agree on providing MININT and MAXINT constants. Work around it by calculating those values ourselves.
Originally committed to SVN as r2917.
2009-05-12 20:48:05 +00:00
Niels Martin Hansen 55d5b668fa Integer-edits in Auto 4 Lua config dialogues now always get spin buttons. If no min/max is specified, minint/maxint are assumed.
Originally committed to SVN as r2916.
2009-05-12 20:26:19 +00:00
Niels Martin Hansen 0b4ecb9797 Normalise case for style section names.
fixes #690 (hopefully)

Originally committed to SVN as r2915.
2009-05-12 18:10:13 +00:00
Niels Martin Hansen 277adad41f Fix a bunch of bugs with config dialogues in Auto 4 Lua:
- When default buttons were present, pushing OK caused no button code to be returned at all.
- A load of controls not handling default/initial values properly, closes #775 and #776

Originally committed to SVN as r2912.
2009-05-12 15:32:11 +00:00
Niels Martin Hansen 05e847b6d2 Make AssColor::Parse() also understand HTML colours with a bit of help from wx.
Originally committed to SVN as r2910.
2009-05-12 15:14:35 +00:00
Karl Blomster ebcdf0ce46 Move the SMPTE timecode stuff out of the AssTime class and put it in a class of its own, FractionalTime. The AssTime to SMPTE part is tested and verified to work (in fact it looks like I unintentionally fixed an overlap bug in the TranStation export filter), while the SMPTE to AssTime part is completely untested (but it's currently not used anywhere so it's not like it matters).
Originally committed to SVN as r2909.
2009-05-10 03:50:58 +00:00
Karl Blomster 61a3c5657a Fix a memleak in the FFMS2 video provider (the frame was never unallocated on video close). Patch by Harukalover, fixes #838
Originally committed to SVN as r2908.
2009-05-10 00:12:04 +00:00
Karl Blomster f869cd0231 Fix a minor bug that caused the add leadin/leadout buttons to not update the time edit boxes. Patch by Harukalover, fixes #836.
Originally committed to SVN as r2906.
2009-05-07 17:52:29 +00:00
Karl Blomster 732ccbbb26 The buffer length/wanted latency in the dsound2 audio player are now tweakable in config.dat; the options are called "audio dsound buffer latency" and "audio dsound buffer length" respectively. Defaults to 100/5 respectively (should work for the people who used to get buffer errors); for better responsiveness try 80/4.
Originally committed to SVN as r2905.
2009-05-07 14:47:36 +00:00
Karl Blomster 4d83215690 Fix a bug (in a somewhat questionable manner) that would cause the text file writer to occasionally think the system locale was Unicode when it wasn't (by using an uninitialized variable in a condition). Should fix the issue with the SRT export filter failing to write "1" on the first line when using "local" as the text encoding.
Originally committed to SVN as r2904.
2009-05-06 19:14:10 +00:00
Karl Blomster 1e2a031765 Add Aegisub::Script::set_undo_point() to auto4-perl. Currently not all that useful since auto4-perl currently only supports macros and nothing else, and using a macro sets an undo point after execution automatically anyway.
Originally committed to SVN as r2903.
2009-05-06 12:25:08 +00:00
Niels Martin Hansen 24aa9785ae Oops, had swapped size and value parameters in a memset call.
Originally committed to SVN as r2901.
2009-05-04 19:15:57 +00:00
Amar Takhar b88254856b s/static/const/ to silence gcc warnings.
Originally committed to SVN as r2897.
2009-05-04 06:50:37 +00:00
Amar Takhar de2ec45cea Silence a bunch of gcc 'newline' warnings.
Originally committed to SVN as r2896.
2009-05-04 06:50:12 +00:00
Karl Blomster c84a79fb7f Implemented an automated cache cleaner that keeps the FFMS2 index cache at a manageable size. Cleaning is started when video is opened with the FFMS2 video provider and runs in its own thread. Removal is based on last access time, and the FFMS2 providers now explicitly touch the index files on reading to make sure access time is updated.
By default the cache is kept below 42MB and 20 files; to change the defaults change "FFmpegSource max cache size" and "FFmpegSource max cache files" in config.dat. Either or both may be set to 0, but the cleaner will not delete the last index file in the directory, regardless of cache settings and of the file's size.

Originally committed to SVN as r2893.
2009-05-03 18:05:30 +00:00
Karl Blomster 0a4190ca98 Fix compilation breakage introduced in r2891.
Originally committed to SVN as r2892.
2009-05-02 20:06:06 +00:00
Karl Blomster 04e4249219 Don't let the MKV parser crash on certain MKV's for which it cannot determine the filesize by itself. (Adaption of Myrsloik's similar fix for FFMS2.)
Originally committed to SVN as r2891.
2009-05-02 19:40:55 +00:00
Niels Martin Hansen 7e38ebfd82 Ensure some fields in VideoContext get initialised.
Originally committed to SVN as r2888.
2009-04-30 22:13:10 +00:00
Karl Blomster 341fc0c019 Re-update the license on Haali's matroska parser.
Originally committed to SVN as r2887.
2009-04-29 21:19:45 +00:00
Karl Blomster 33c31e3eee Update Haali's MatroskaParser.c/.h in the main source tree (there's a copy in the FFMS2 folder as well, which will be updated later). Should fix a crash with x264-generated MKV's.
Originally committed to SVN as r2884.
2009-04-29 21:00:08 +00:00
Niels Martin Hansen 866f9d21fc Let AudioProvider::GetAudioWithVolume() catch exceptions in AudioProvider::GetAudio() and return blank audio when that happens. Errors are not logged or otherwise handled. This fixes #800 for most cases, even if poorly.
Originally committed to SVN as r2883.
2009-04-29 19:30:02 +00:00
Karl Blomster aacf2e4c19 remove duplicate variable
Originally committed to SVN as r2881.
2009-04-29 17:42:48 +00:00
Karl Blomster 1b2d26c231 Fix a few memory leaks in the FFMS2 providers. Patch by Myrsloik.
Originally committed to SVN as r2880.
2009-04-29 17:40:02 +00:00
Karl Blomster 7f44500c89 Don't fail to read subtitles from MKV's that are named .mks or .mka, both of those are reported as supported formats in the "open subtitles" dialog box.
Originally committed to SVN as r2878.
2009-04-29 14:04:23 +00:00
Karl Blomster 8c44d698e4 Don't try to synch audio when there is no audio player/provider present. (Could cause a crash under certain rare conditions.) Thanks Avi for report and fix.
Originally committed to SVN as r2871.
2009-04-28 10:23:20 +00:00
Karl Blomster 51df55edd7 Fix some more minor editbox regressions introduced in r2859. Patch by Harukalover, updates #794
Originally committed to SVN as r2861.
2009-04-26 04:31:19 +00:00
Karl Blomster eed65e8945 Fix a minor graphical glitch in the time edit boxes introduced in r2859. Patch by Harukalover. updates #794
Originally committed to SVN as r2860.
2009-04-26 01:23:01 +00:00
Karl Blomster 31aed4c1a7 Fix a number of odd quirks regarding how grid selection is moved after committing multiple lines, and how audio selection moves after committing. See #794 for full details. Patch by Harukalover.
closes #64, #420, #794

Originally committed to SVN as r2859.
2009-04-26 01:02:23 +00:00
Karl Blomster 76cec3ec29 Fix a bug that would cause a crash under certain conditions when trying to change the properties of a recently deleted line. Patch by Plorkyeran, closes #815
Originally committed to SVN as r2858.
2009-04-26 00:25:33 +00:00
Karl Blomster 32eb3a8a62 Fix a bug that would cause the program to crash if CSRI was selected as subtitle renderer but no CSRI renderer was actually installed. Patch by Plorkyeran, closes: 462
Originally committed to SVN as r2857.
2009-04-26 00:11:29 +00:00
Karl Blomster 4dafa0ff10 Use less magic numbers
Originally committed to SVN as r2856.
2009-04-25 23:08:45 +00:00
Fredrik Mellbin a41e48a159 Fix the video provider after the FFMS2 changes part2
Originally committed to SVN as r2852.
2009-04-25 10:31:39 +00:00