Commit graph

1546 commits

Author SHA1 Message Date
Amar Takhar 4783530e9f Fix osx-bundle and osx-dmg breakage after adding buildbot support, both scripts now accept spaces in the directory names.
Originally committed to SVN as r3001.
2009-06-02 00:16:45 +00:00
Niels Martin Hansen 703ae3f7a6 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 721d8aad79 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 66821aa145 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 49ba78c08e 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 d7d07dc797 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
Karl Blomster 9e22e1456c Update ffms2.lib
Originally committed to SVN as r2995.
2009-06-01 13:55:06 +00:00
Fredrik Mellbin 72bb9214fb FFMS2: Improve LAVF audio seeking in weird files
Originally committed to SVN as r2994.
2009-05-29 16:35:10 +00:00
Fredrik Mellbin 974bad3b6e FFMS2: beta 9 TAG!
Originally committed to SVN as r2993.
2009-05-28 20:26:18 +00:00
Fredrik Mellbin 02065a7509 Changes required to compile because of the previous commit
Originally committed to SVN as r2992.
2009-05-28 19:34:52 +00:00
Fredrik Mellbin 38c420c7bd FFMS2:
Renamed a public api function just because I can
Less access violations (AGAIN!)
Dumping now implies indexing too
Much better logic for automatically indexing files when FFAudioSource is used in avisynth
Changed defaults for FFIndex
Now FFmpeg's internal codec lists are used for lookup from the non-lavf based parts

Originally committed to SVN as r2991.
2009-05-28 19:33:14 +00:00
harukalover 68a7d04f06 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 114bc5b367 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 4ba221a931 Another missing ifdef in ffmsindex
Originally committed to SVN as r2988.
2009-05-25 16:28:28 +00:00
Fredrik Mellbin 64242fd363 FFMS2: unix ifdefs in ffmsindex
Originally committed to SVN as r2987.
2009-05-25 16:25:43 +00:00
Karl Blomster 5a193a73ec 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
Karl Blomster 3a947259f7 Update FFMSIndex to work with the new audio dump method.
Also update ffms2.lib (again).

Originally committed to SVN as r2985.
2009-05-25 15:50:31 +00:00
Fredrik Mellbin 5857345b8d FFMS2: revert the initialization mess, instead require the caller to initialize com where it's needed
Originally committed to SVN as r2984.
2009-05-25 14:05:04 +00:00
Karl Blomster c60b4b449f Update ffms2.lib
Originally committed to SVN as r2983.
2009-05-25 13:44:27 +00:00
Niels Martin Hansen 29a9d1fcf1 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 12482ac418 FFMS2: more initialization fun
Originally committed to SVN as r2981.
2009-05-24 23:04:11 +00:00
Karl Blomster 72dc17af28 Update ffms2.lib as per usual
Originally committed to SVN as r2980.
2009-05-23 23:03:57 +00:00
Fredrik Mellbin 45dc8d8819 FFMS2: The usual small fixes
Originally committed to SVN as r2979.
2009-05-23 20:04:38 +00:00
Fredrik Mellbin da8163055c 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
Fredrik Mellbin 3a7618cd64 FFMS2: Use the average fps for files opened with Haali's splitters
Originally committed to SVN as r2977.
2009-05-22 23:41:37 +00:00
Fredrik Mellbin cb1a9ba0b3 FFMS2:
Fix the weird crash bug
Fix *nix compilation

Originally committed to SVN as r2976.
2009-05-22 23:28:08 +00:00
Fredrik Mellbin 24c0a673b9 FFMS2: Missing #ifdef
Originally committed to SVN as r2975.
2009-05-22 22:12:31 +00:00
Karl Blomster edc10f752c Fix ffms2 providers to work with latest FFMS2 API changes.
Originally committed to SVN as r2974.
2009-05-22 21:44:02 +00:00
Karl Blomster 6b42083504 Update ffms2.lib to get in sync with last commit.
Originally committed to SVN as r2973.
2009-05-22 21:30:57 +00:00
Fredrik Mellbin d2c469e3e0 FFMS2:
Added audio decoding using Haali's splitters
Restructuring
Big API changes
Many bug fixes

Originally committed to SVN as r2972.
2009-05-22 21:28:02 +00:00
Niels Martin Hansen 8a04053ff2 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 9550bc6366 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 8a417de164 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 d40b0f36f6 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 82f02efba8 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 b4a250122a Fixed a memory leak in the CSRISubtitlesProvider
Originally committed to SVN as r2966.
2009-05-21 23:02:34 +00:00
harukalover e771de5483 Fixed some memory leaks in the kanji timer
Originally committed to SVN as r2965.
2009-05-21 22:57:43 +00:00
harukalover b5d7851413 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 eadf49d10e 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 bfce57662e 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 68d705fd22 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 73dbcf6ecd FFMS2: More ICL warning inspired fixes
Originally committed to SVN as r2960.
2009-05-21 10:39:14 +00:00
Fredrik Mellbin 7b0efd10f8 FFMS2: ICL compilation fix
Originally committed to SVN as r2959.
2009-05-21 10:05:53 +00:00
Fredrik Mellbin 3d2ad9525a FFMS2: Another small typo after all the changes
Originally committed to SVN as r2957.
2009-05-20 22:40:55 +00:00
Fredrik Mellbin 9d636c3cfb FFMS2: Missing #ifdef
Originally committed to SVN as r2956.
2009-05-20 19:05:42 +00:00
Fredrik Mellbin cd7932d6ee 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 1e52702f0a 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 bd485315a8 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 bace72cf29 * 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 14e3cb4323 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 55f4a80904 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 2feb39393d 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 ea8841932b 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
Fredrik Mellbin fdf73126b9 FFMS2:
Some more API cleanup
General cleanup

Originally committed to SVN as r2947.
2009-05-17 22:02:43 +00:00
Karl Blomster cf96f7c8ad Update Japanese translation.
Originally committed to SVN as r2946.
2009-05-17 15:17:52 +00:00
harukalover 5b9bd7ac6d 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 a60d16913d 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 d6cea9d93e Updated ffms2.lib.
Originally committed to SVN as r2943.
2009-05-16 12:46:50 +00:00
Niels Martin Hansen 741c3fbd4e Split video backend and UI into separate groups in MSVC project file.
Originally committed to SVN as r2942.
2009-05-16 12:46:22 +00:00
Amar Takhar e5eb667879 As required by r2940 supply -DFFMS_EXPORTS when building the library.
Originally committed to SVN as r2941.
2009-05-16 12:13:27 +00:00
Fredrik Mellbin 80a209e95a FFMS2:
Rename lots of things, THIS BREAKS THE AEGISUB BUILD because of changed exported type and function names.
Fixed an uninitialized memory bug that would make it crash on unindexed audio tracks in mastroska.
Made ffms.h C-friendlier.
Exports the start time of an audio track in the audio properties.
Less signedness and type conversion warnings.

Originally committed to SVN as r2940.
2009-05-15 23:11:18 +00:00
Niels Martin Hansen 6a999030f6 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 0d1b45f7d1 Apply Plorkyeran's patch to close #843.
Originally committed to SVN as r2938.
2009-05-15 12:44:36 +00:00
Karl Blomster 1dbb23f106 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 5e214986e1 Add a bit of sanity checking to FractionalTime.
Originally committed to SVN as r2936.
2009-05-15 12:18:33 +00:00
harukalover 3011ade060 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 3ce80afadf 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 6e6447f215 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 a8bd30487b aegisub_endian.h was missing from MSVC project.
Originally committed to SVN as r2932.
2009-05-14 23:58:24 +00:00
Niels Martin Hansen c7c95d20c0 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 153cfbcd5f 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 20477198e6 Const correctness in AssTime.
Originally committed to SVN as r2929.
2009-05-14 23:09:04 +00:00
Niels Martin Hansen 33696616f4 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 b19d604de4 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 00df76c4fb Remove some unused code from karaoke UI.
Originally committed to SVN as r2926.
2009-05-14 21:26:39 +00:00
Niels Martin Hansen ef03e3050d Split audio sources in MSVC project into Backend and UI groups.
Originally committed to SVN as r2925.
2009-05-14 21:25:08 +00:00
harukalover 82fca6e35f * 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 370b986181 * 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
Niels Martin Hansen 5a4ffa1005 Fix #845 by counting how many output lines were produced by applying a template to a line, instead of assuming that a template always gets applied, even if it's a code template.
Originally committed to SVN as r2922.
2009-05-14 15:34:37 +00:00
harukalover d8e6d94754 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 6a42e17409 - 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
Karl Blomster 887b9b1988 Update ffms2.lib as per Myrsloik's last commit.
Originally committed to SVN as r2919.
2009-05-12 21:31:44 +00:00
Fredrik Mellbin 16f3f59cb2 FFMS2: api change so the logging level can be set arbitrarily, it also defaults to quiet now
Originally committed to SVN as r2918.
2009-05-12 20:50:40 +00:00
Niels Martin Hansen ae988ed37b 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 f425b58017 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 e87a031828 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 86e70e9094 Bump kara-templater version number.
Originally committed to SVN as r2914.
2009-05-12 16:39:53 +00:00
Niels Martin Hansen 7e90cdcf09 Add support for variable loops in kara-templater, and add a few more utility functions.
- Variable loops are controlled using the tenv.maxloop(newmax) function to set the loop counter max. This is a wrapper around setting tenv.maxj.
- Add tenv.relayer(newlayer) function for changing the Layer of an output line.
- Add tenv.restyle(newstyle) function for changing the Style of an output line, despite this usually breaking positioning/sizing information.
- tenv.maxloops is an alias for tenv.maxloop.
- tenv.loopctl(newj, newmaxj) controls both loop variables if anyone wants to do that.
This closes #753 but documentation still needs to be written.

Originally committed to SVN as r2913.
2009-05-12 16:36:51 +00:00
Niels Martin Hansen 95d71d1dcf 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 cad5b98e1b Extend Auto 4 Lua config dialogues test case to cover most interesting cases of controls.
Updates #775 and #776 since they need those cases.

Originally committed to SVN as r2911.
2009-05-12 15:24:07 +00:00
Niels Martin Hansen 54037c56e7 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 d56982ed4a 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 179d23fd5c 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
Fredrik Mellbin 2cab187fd8 FFMS2: beta 8
Originally committed to SVN as r2907.
2009-05-09 21:59:24 +00:00
Karl Blomster 3bdbcd7b5e 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 87a39833b8 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 bfe40a6667 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 c6fe68c76d 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
Karl Blomster 02f7d0006c change how ffmsindex is linked to ffms2 (use a #pragma instead of an extra dependency in the project file)
Originally committed to SVN as r2902.
2009-05-05 21:43:49 +00:00
Niels Martin Hansen 36dbd86dd6 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