Thomas Goyne
a0d3dbc550
Extract Loading/Saving/Undo stuff from AssFile
...
Add SubsController, which deals with things like what subtitle file is
currently open, rather than the contents of the current subtitle file.
Move the rest of the relevant logic from FrameMain there in addition to
all of the stuff from AssFile.
2013-02-06 13:22:32 -08:00
Thomas Goyne
1e0f08c0ed
Mostly purge wxWidgets from non-UI stuff
...
Use boost::filesystem::path for all paths, and std::string for all other
strings, converting to/from wxString as close to the actual uses of wx
as possible.
Where possible, replace the uses of non-UI wxWidgets functionality with
the additions to the standard library in C++11, or the equivalents in
boost.
Move the path token management logic to libaegisub (and rewrite it in
the process).
Add a basic thread pool based on asio and std::thread to libaegisub.
This touches nearly every file in the project and a nontrivial amount of
code had to be rewritten entirely, so there's probably a lot of broken
stuff.
2013-02-06 13:22:15 -08:00
Thomas Goyne
a99428c49d
Extract options and MRU stuff from main.h
...
Nearly all of the files including main.h are doing so only for OPT_GET
and friends, which are rather unrelated to the main things that main.h
declares.
2013-01-09 16:48:31 -08:00
Thomas Goyne
d0f4d9df99
Replace all uses of lagi_wxString with to_wx
2012-12-22 15:18:38 -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
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
e44c47c863
Remove $Id$ markers since git doesn't support them
2012-10-25 17:39:49 -07:00
Thomas Goyne
95a1b7e9b5
Remove AudioPlayer::OpenStream and CloseStream
...
Instead, just pass the provider to the constructor and let the player
worry about when to create its things. The ability to explicitly open
and close the playback wasn't actually required for anything, and it
complicated the implementations of the players.
2012-10-12 14:51:29 -07:00
Thomas Goyne
a51de67d68
ffms2: Reindex and reload audio when the error handling mode is changed
...
Originally committed to SVN as r6891.
2012-06-07 21:03:11 +00:00
Thomas Goyne
cb75c42f04
Leave the old audio open when opening new audio fails for any reason
...
Originally committed to SVN as r6738.
2012-05-02 00:31:38 +00:00
Thomas Goyne
3c31c1a17a
Store the loaded audio file as a path relative to the subtitles, as is done with video
...
Originally committed to SVN as r6710.
2012-04-21 15:13:40 +00:00
Thomas Goyne
26b7970ed0
Add missing milliseconds to samples conversion that resulted in audio playback stopping when the start or end time of the line was changed
...
Originally committed to SVN as r6467.
2012-02-12 04:16:21 +00:00
Thomas Goyne
aaf7285a6e
Remove UI-related responsibilities from AudioController
...
Keeping track of audio markers and labels to be shown in the audio
display is not particularly related to AudioController's primary
responsiblity of controlling the playback of audio.
Originally committed to SVN as r6427.
2012-02-01 23:59:12 +00:00
Thomas Goyne
01b92aa4e3
Change AudioController's public API from samples to milliseconds
...
The sample rate of the currently open audio is not something that things
which do not interact with the raw audio data should have to care about,
or even know about.
Originally committed to SVN as r6426.
2012-02-01 23:58:58 +00:00
Thomas Goyne
e6d86a1af4
Don't remove audio files from the recently used files list when loading is cancelled
...
Originally committed to SVN as r6354.
2012-01-25 04:59:11 +00:00
Thomas Goyne
6f7836c11e
Paint keyframe markers on top of line markers so that they don't vanish when lines are scenetimed
...
Originally committed to SVN as r6239.
2012-01-08 01:35:25 +00:00
Thomas Goyne
df9c6b627f
Improve audio open error reporting and remove a pile of unused stuff in AudioPlayer
...
Originally committed to SVN as r6223.
2012-01-08 01:33:39 +00:00
Thomas Goyne
eda90a15fb
Make the "Play last 500ms of selection" command always play to the end of the selection as it did in 2.1
...
Originally committed to SVN as r6171.
2011-12-27 02:23:04 +00:00
Thomas Goyne
34a87b1c1e
Silence a pile of /W4 warnings
...
Originally committed to SVN as r6001.
2011-12-22 21:09:31 +00:00
Thomas Goyne
f0e98151f1
Close audio if an error occurs while announcing the opened audio as the program is probably in an inconsistent state
...
Originally committed to SVN as r5946.
2011-11-30 04:28:03 +00:00
Thomas Goyne
563a544150
Reload audio when the cache type is changed
...
Originally committed to SVN as r5894.
2011-11-19 04:57:14 +00:00
Thomas Goyne
236ea4261d
Reload audio when the player or provider is changed
...
Originally committed to SVN as r5892.
2011-11-19 01:14:42 +00:00
Thomas Goyne
70fcece459
Don't create the audio timing controller until audio is actually opened
...
Originally committed to SVN as r5888.
2011-11-18 22:58:22 +00:00
Thomas Goyne
8d28b44773
Get audio styling ranges from the timing controller. Based on a patch by jfs.
...
Originally committed to SVN as r5878.
2011-11-18 22:56:45 +00:00
Thomas Goyne
91a62836a5
Move the keyframe marker provider from the audio controller to the timing controllers
...
Originally committed to SVN as r5859.
2011-11-16 19:56:00 +00:00
Thomas Goyne
29518f585a
Move AudioMarkerProviderKeyframes from audio_controller.cpp to its own header/source files
...
Originally committed to SVN as r5858.
2011-11-16 19:55:49 +00:00
Thomas Goyne
75d471c538
Remove unneeded overloaded operators for AudioMarkerKeyframe
...
Originally committed to SVN as r5857.
2011-11-16 19:55:40 +00:00
Thomas Goyne
2f394a7792
Fix compilation with clang (but not linking because wxAny is currently broken with it)
...
Originally committed to SVN as r5826.
2011-11-07 06:18:34 +00:00
Thomas Goyne
f6c8c83f5a
Obey the option to disable the keyframe markers in the audio display
...
Originally committed to SVN as r5778.
2011-10-25 19:01:41 +00:00
Thomas Goyne
d4e17dde2e
Factor out the idea of a pen bound to options to a utility class
...
Originally committed to SVN as r5759.
2011-10-19 04:19:01 +00:00
Thomas Goyne
7dfaa6427c
Implement the video position marker in the audio display
...
Originally committed to SVN as r5728.
2011-10-10 21:04:23 +00:00
Thomas Goyne
77d02d269d
Eliminate a use of VideoContext::Get in AudioMarkerProviderKeyframes
...
Originally committed to SVN as r5660.
2011-09-28 19:51:44 +00:00
Thomas Goyne
6bf4a95428
Add a subtitles save slot to AudioController which stores the audio URI in the subtitles
...
Originally committed to SVN as r5659.
2011-09-28 19:51:35 +00:00
Thomas Goyne
74ae9189a2
Set ?audio to the path to the currently open audio file
...
Originally committed to SVN as r5658.
2011-09-28 19:51:26 +00:00
Thomas Goyne
9fc0b33cdf
Add opened audio files to the audio mru list
...
Originally committed to SVN as r5657.
2011-09-28 19:51:18 +00:00
Thomas Goyne
d990bbbb99
Eliminate all unnecessary uses of L and _T
...
Originally committed to SVN as r5611.
2011-09-28 19:43:11 +00:00
Thomas Goyne
3f05fe6b3e
Add support for labels in the audio display
...
Originally committed to SVN as r5589.
2011-09-15 05:16:26 +00:00
Thomas Goyne
256e098aa7
Remove header include order requirements
...
Originally committed to SVN as r5449.
2011-07-15 04:04:13 +00:00
Thomas Goyne
be71a66600
Add command and AudioController support for saving audio clips
...
Originally committed to SVN as r5218.
2011-01-16 07:18:00 +00:00
Thomas Goyne
d282b425c0
Update the audio display when keyframes are loaded/unloaded
...
Originally committed to SVN as r5086.
2010-12-31 23:53:42 +00:00
Thomas Goyne
7347c09ac0
Use Bind rather than Connect in AudioController
...
Originally committed to SVN as r5085.
2010-12-31 23:53:36 +00:00
Thomas Goyne
cf89403a5b
Listen for timecode load signals in AudioMarkerProviderKeyframes
...
Originally committed to SVN as r5084.
2010-12-31 23:53:30 +00:00
Thomas Goyne
4fdad923ad
Timecodes and keyframes are always sorted, so fix some code that assumed they could be unsorted
...
Originally committed to SVN as r5083.
2010-12-31 23:53:23 +00:00
Thomas Goyne
17c07cc131
Add timecodes opened signal to VideoContext
...
Originally committed to SVN as r5080.
2010-12-31 21:03:18 +00:00
Thomas Goyne
27cb511556
Make blank audio actually blank
...
Originally committed to SVN as r4912.
2010-12-08 08:09:49 +00:00
Thomas Goyne
b134428668
Store the URL of opened audio files
...
Originally committed to SVN as r4908.
2010-12-08 08:09:25 +00:00
Thomas Goyne
3345797ff6
Use signals in AudioController and AudioTimingController
...
Originally committed to SVN as r4907.
2010-12-08 08:09:16 +00:00
Amar Takhar
c15777f844
Merge audio_display_rewrite branch to trunk. This is not a complete work, don't expect to time anything for a while.
...
Originally committed to SVN as r4903.
2010-12-08 03:36:10 +00:00