Thomas Goyne
572a58cd90
Have FFMS2 do the audio downmixing when possible
...
Aegisub's downmixer is terrible for anything with more than two channels
(averaging all the channels together is not even vaguely close to the
correct thing to do for 5.1), so libavresample should be far better.
2012-12-27 08:42:00 -08:00
Thomas Goyne
745b9ab2a9
Build ffmpeg and ffms2 with libavresample
2012-12-26 19:32:47 -08:00
Thomas Goyne
44323cef6d
Use max_element rather than a loop
2012-12-26 19:27:25 -08:00
Thomas Goyne
6e3cc883b3
Replace most uses of type::iterator with auto
2012-12-22 15:35:13 -08:00
Thomas Goyne
d0f4d9df99
Replace all uses of lagi_wxString with to_wx
2012-12-22 15:18:38 -08:00
Thomas Goyne
e270dc9aec
Use stable_vector for AudioProviderRam's cache
...
stable_vector allocates its elements non-contiguously (as is required
for stability), while still giving O(1) indexing.
2012-12-22 14:44:35 -08:00
Thomas Goyne
433368dc58
Fix some weirdness in the AVS audio provider
2012-12-22 12:14:32 -08:00
Thomas Goyne
46d2819312
Use lambdas for some of DialogProgress's stuff
2012-12-22 11:51:08 -08:00
Thomas Goyne
6e5b53d1a9
Move the logic for which AudioProvider to create out of AudioController
...
Audio providers should be responsible for determining whether or not
they can open a URI, since it's not really possible for anything else
to. As such move the (lack of) parsing of dummy audio URIs to
DummyAudioProvider, and try to create DummyAudioProviders in
AudioProvider::CreateProvider.
2012-12-22 09:30:47 -08:00
Thomas Goyne
a4607ff6be
Clean up AudioProvider a bit
...
Factor out some duplicated code and clean up some cruft.
2012-12-22 07:49:59 -08:00
Thomas Goyne
31feab4a8b
Rewrite the dummy video dialog
...
Use validators for transferring data to/from the controls and for
validating the values rather than a bunch of custom logic.
2012-12-21 17:01:13 -08:00
Thomas Goyne
0b5994e8eb
Always update edit box styles when it's called directly
2012-12-21 16:56:27 -08:00
Thomas Goyne
e25fc4b334
Add Remove From Dictionary to the subs edit box context menu when applicable. Closes #1184 .
2012-12-21 16:56:27 -08:00
Thomas Goyne
24aef1ffef
Fix word-boundary checking for edit box spellchecking
2012-12-21 16:56:27 -08:00
Thomas Goyne
835f7c0f78
Only enable the Remove Word button when the word can be removed. Updates #1184 .
2012-12-21 16:56:26 -08:00
Stjepan Henc
fe630e052b
Add Remove Word button to the spellchecker dialog. Updates #1184 .
2012-12-21 16:56:26 -08:00
Thomas Goyne
36012c3302
Delete the respack-generated files on Clean
2012-12-17 17:21:26 -08:00
Thomas Goyne
a2c14e9c5f
Check the error code when FFMS2 can't create an indexer
...
Creating an indexer can fail for reasons other than the file not
existing. This check is still not completely correct, since FFMS2 uses
the wrong error codes in a bunch of places.
2012-12-17 10:14:08 -08:00
Thomas Goyne
eab11666a9
Remove some cruft from option.h
2012-12-17 09:32:42 -08:00
Thomas Goyne
4c6be1fe55
Fix y4m loading
2012-12-17 09:32:42 -08:00
Thomas Goyne
229e5d98c5
Avoid making a full copy of the file for ThreadedFrameSource when possible
...
When the set of changed lines is populated, only copy those lines rather
than the entire file. On large files, this makes amend commits roughly
twice as fast when video is open.
2012-12-17 09:32:42 -08:00
Thomas Goyne
fee60be5db
Announce the set of lines changed in commits
...
Currently this is only populated when commits are amended, for the
simple reason that it's the only time that AssFile knows what lines
changed. It is probably worth expanding this in the future.
2012-12-17 09:32:42 -08:00
Thomas Goyne
4e72fff1d9
Check the right substrings in the spellchecker dialog. Closes #1560 .
2012-12-12 18:08:07 -08:00
Thomas Goyne
72ae116196
Rename SubsEditBox's private members
...
Mostly to cut down on conflicts with the split-editbox branch.
2012-12-12 15:17:21 -08:00
Thomas Goyne
090905056b
Remove spaces in > > in nested templates
2012-12-11 10:58:28 -08:00
Thomas Goyne
6e153ed7d9
Make OpenGLTextTexture moveable so that it doesn't need to be in a shared_ptr
2012-12-11 10:41:20 -08:00
Thomas Goyne
0b133de08f
Remove pointless empty destructors
...
An explicit empty destructor is only needed when a class has a smart
pointer to an incomplete type.
2012-12-11 09:06:21 -08:00
Thomas Goyne
9a77d564e4
Cut down on the padding under the audio toolbar
2012-12-11 08:32:58 -08:00
Thomas Goyne
7c477f3cd1
Use a real toolbar for the video box's buttons
2012-12-11 08:25:24 -08:00
Thomas Goyne
534f574a87
Delete AssDialogue::StripTag
...
It is not actually used anywhere.
2012-12-10 17:43:29 -08:00
Thomas Goyne
8c2062f0c7
Store AssOverrideTags directly rather than a vector of pointers
2012-12-10 17:04:18 -08:00
Thomas Goyne
a0d3b8595f
Redesign AssOverrideParameter
...
Always store the original string form and convert it to the desired type
on demand. In most cases this is significantly faster as typically only
a few of the parameters in a line are actually read. In addition, this
makes it so that parameters which did not actually change are always
reserialized in their original form.
Delete VariableData as it's no longer used by anything.
Closes #1513 .
2012-12-10 14:41:11 -08:00
Thomas Goyne
f28f6ad5b3
Join lines copied to the clipboard with newlines rather than nothing
2012-12-10 14:03:03 -08:00
Thomas Goyne
fb3500b354
Make the configure check for lua more specific
...
Move the generic lua check to after the checks for lua 5.1 and check for
lua < 5.2.
Closes #1559 .
2012-12-10 14:01:56 -08:00
Thomas Goyne
936598e9f5
Add include directory and log files to .gitignore
2012-12-10 07:43:23 -08:00
Thomas Goyne
681de8cf37
Fix order of VariableData's initializers
2012-12-09 17:19:01 -08:00
Thomas Goyne
a36011a9dd
Don't insert [Script Info] entries for empty values
2012-12-09 17:07:05 -08:00
Thomas Goyne
c1409b5c25
Add a space after the colon in [Script Info] entries
2012-12-09 17:05:11 -08:00
Thomas Goyne
96b3656742
Stick to the standard order of sections when inserting lines
2012-12-09 15:44:03 -08:00
Thomas Goyne
205d408f3e
Move tag/param proto declarations to the cpp file
...
It's purely an implementation detail of the parser that should not be
exposed to the outside world.
2012-12-09 15:40:29 -08:00
Thomas Goyne
8cf47c38b6
Drop AssOverrideParameter::omitted since it's equivalent to the type being VARDATA_NONE
2012-12-09 10:36:13 -08:00
Thomas Goyne
d2a0a76ca9
Store AssOverrideParameters directly rather than a vector of pointers to them
2012-12-09 10:12:50 -08:00
Thomas Goyne
851f7f40e6
Make VariableData uncopyable but moveable
2012-12-09 10:12:50 -08:00
Thomas Goyne
482d31299b
Remove unused things from VariableData
2012-12-09 08:04:29 -08:00
Thomas Goyne
7e38ad6ec7
Don't add {} to the body of \t tags
2012-12-09 08:04:20 -08:00
Thomas Goyne
bd35d9308d
Use unordered_set for the actor/effect values
2012-12-07 19:24:42 -08:00
Thomas Goyne
9b44f92235
Make AssEntry purely a base class and add AssInfo
...
Now that all the other junk is being dropped from the file, script info
lines are the only thing left which was a concrete AssEntry, and
AssEntry wasn't actually a very good way to store them.
2012-12-07 18:55:29 -08:00
Thomas Goyne
cccd95941d
Fix syntax highlighting for multiple karaoke templater expression blocks
2012-12-07 18:20:09 -08:00
Thomas Goyne
28705000bb
Use boost::join in a handful of places
2012-12-07 08:25:47 -08:00
Thomas Goyne
0ac8df140c
Make the check for if an override tag needs parens less dumb
2012-12-07 08:12:45 -08:00