Thomas Goyne
99b5c26592
Fix crash when playing audio before time 0
...
There were two checks for reads past the end rather than checks for
before start and after end.
Closes #1556 .
2012-11-25 14:03:04 -08:00
Thomas Goyne
1c9af767e5
Move audio decode error handling to GetAudio
...
Errors when not getting with volume need to be handled too.
Updates #1509 .
2012-09-01 21:45:18 -07:00
Thomas Goyne
18db0b09ac
Log audio decoding errors
...
Originally committed to SVN as r6961.
2012-08-19 14:11:29 -07:00
Thomas Goyne
79684d5ad6
Factor out bounds-checking for GetAudio to a single place
...
It was being done in inconsistent ways in several places, which did not
include all of the places it needed to be done.
Closes #1509 .
Originally committed to SVN as r6960.
2012-08-19 14:11:29 -07:00
Thomas Goyne
037d385419
Guard uses of audio providers with a mutex when not using a cache as they aren't thread-safe. Updates #1509 .
...
Originally committed to SVN as r6959.
2012-08-19 14:11:29 -07:00
Thomas Goyne
05f63f14b2
Log which audio provider is actually used
...
Originally committed to SVN as r6902.
2012-06-13 15:58:21 +00:00
Thomas Goyne
7c461ddfcf
Use size_t rather than int64_t as the array index in AudioProvider::GetAudioWithVolume
...
In 32-bit builds the int64_t index resulted in two (inlined) calls to
allmul per audio sample, which took 25-50% of the total CPU time
involved in playing audio from the RAM cache.
Originally committed to SVN as r6900.
2012-06-13 04:16:50 +00:00
Thomas Goyne
b32515da80
Strip trailing whitespace from all cpp and h files
...
Originally committed to SVN as r6600.
2012-03-25 04:05:06 +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
a927672c27
Remove unused private variables in AudioProvider
...
Originally committed to SVN as r6222.
2012-01-08 01:33:33 +00:00
Thomas Goyne
f2c62dad3d
Factor out a bunch of duplicated code in the configure script for pkg-config based optional dependencies and use the pkg-config name for all WITH_* defines
...
Originally committed to SVN as r6104.
2011-12-22 21:25:49 +00:00
Thomas Goyne
92949bc965
Remove AegisubApp::Get, as wxGetApp() does the same thing
...
Originally committed to SVN as r6051.
2011-12-22 21:17:30 +00:00
Thomas Goyne
32463efb08
Fix crash when trying to open audio from file with no audio tracks
...
Originally committed to SVN as r5682.
2011-09-29 20:27:13 +00:00
Thomas Goyne
dfef9191f9
Move the creation of the progress dialog for the audio caches to AudioProvider and just pass the BackgroundRunner to the caches. This still isn't the right place to be creating it, but this removes the UI-dependency for both caches.
...
Originally committed to SVN as r5646.
2011-09-28 19:49:37 +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
Thomas Goyne
c10e9e3a5b
Make video and audio providers throw typed exceptions.
...
Don't display error messages and try other providers when the user
cancels loading a file.
Remove files from the MRU lists if they can't be found.
Closes #717 .
Originally committed to SVN as r4717.
2010-08-02 06:32:01 +00:00
Thomas Goyne
71fb04cd29
Rework most of the various factories to not need an explicit helper class for each class constructable via a factory.
...
Originally committed to SVN as r4716.
2010-08-02 06:31:38 +00:00
Thomas Goyne
f0aa85dfbb
Delete the quicktime provider, as it's unmaintained and doesn't work
...
Originally committed to SVN as r4715.
2010-07-27 03:52:40 +00:00
Thomas Goyne
4a8abae3a3
Kill options.h and options.cpp, which have been empty for a while
...
Originally committed to SVN as r4676.
2010-07-12 21:49:48 +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
Amar Takhar
d348b4e33e
Fix all the headers in *.cpp, this includes:
...
* Wrapping all headers that are in agi_pre.h with AGI_PRE.
* Sorting alphabetically.
Originally committed to SVN as r3515.
2009-09-10 13:06:40 +00:00
Amar Takhar
7a8c5229fd
* Remove wxprec.h from all files other than agi_pre.h. Including this in various headers is useless as it includes wx.h which includes dozens of 'common' wx headers. With this we're unable to tell which files rely on which interfaces. This commit removes them and manually places in required headers as-needed.
...
* Update agi_pre.h to include some missing headers, also move required windowsheaders to the top of the list
* Use <> versus "" for the wx header in avisynth_wrap.cpp
* Remove xx/wx.h from agi_pre.h as it's included by wxprec.h.
Originally committed to SVN as r3513.
2009-09-10 10:26:50 +00:00
Amar Takhar
6ee2f98349
Note: This was done using a script! it's far from perfect but 95% of the work has been done already formatting-wise.
...
Document all functions, class, struct, union, enum, macro, variable, typedefs. This isn't the actual document in itself but empty documentation using any old documentation if it was there.
This was done using exuberant ctags to get tag info, then a TCL script to parse/remove old comments and convert them into Doxygen-style.
Some notes:
* Anything labeled 'DOCME' needs to be documented, @param and @return have been left blank as it would be annoying to delete the 'DOCME' from every one of those.
* Some multiline comments may have been munged into single line comments
* Leave the /// comments above global variables with a space, if they're harder to read then we'll be less likey to use them.
* Enum comments can go after the enumeration itself '[value] /// comment'
* include/aegisub/*.h haven't been converted yet, this will be done in a later commit
* Some documentation blocks are in the wrong place, in the .h when it should be in the .cpp, or vice versa.
See http://devel.aegisub.org/wiki/Doxygen for some details on Doxygen and a 'style guide'.
Originally committed to SVN as r3312.
2009-07-29 22:59:22 +00:00
Amar Takhar
12aa34088a
Switch all headers to using Doxygen and cleanup contact info
...
* Swap old email + website address with 'Aegisub Project http://www.aegisub.org/ '
* Set categories for all files (jfs)
* Add descriptions for each file (jfs)
* Add $Id$ keyword
Originally committed to SVN as r3310.
2009-07-29 05:43:02 +00:00
Karl Blomster
bec8951534
Implement a basic QuickTime audio provider. Currently a bit limited in functionality (it will convert everything to 16-bit mono), but seems to work fine with the one .mov test file I have. Also does a lot of ugly downcasting, I'll try to fix that later.
...
Originally committed to SVN as r3254.
2009-07-24 06:04:19 +00:00
harukalover
ac33243a49
Fixed compilation with wxWidgets 2.9.0 again plus removed some unneeded #if's (wc_str is the same as c_str under 2.8)
...
Originally committed to SVN as r3191.
2009-07-22 19:52:59 +00:00
Karl Blomster
dfea9f9713
Remove the deprecated ffmpeg audio/video providers. They have not yet been removed from any of the build systems; verm will remove them from the Unix one and I will remove them from the MSVC project file shortly.
...
Originally committed to SVN as r3148.
2009-07-16 19:08:40 +00:00
harukalover
4eeb89710d
Fixed compilation support with wxWidgets 2.9.0 (seems to work correctly besides some minor gui issues)
...
Originally committed to SVN as r3049.
2009-06-11 23:30:33 +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
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
Amar Takhar
91d73ec8ea
SVN Transition Step 3/7
...
1. cd aegisub/
2. svn mv *cpp *h src/
3. svn mv Makefile.am MatroskaParser.c auto4_perldata.inc bitmaps boost \
changelog.txt config gl include libosxutil libresrc md5.c msvc mythes.cxx \
mythes.hxx res.rc src/
4. cd ..
5. svn mv FFmpegSource2/ INSTALL Makefile.am README acinclude.m4 \
autogen.sh automation/ bin build configure.in desktop dummy.txt lib \
libass/ m4macros/ packages/ po/ scripts/ universalchardet/ aegisub/
6. mkdir -p docs/wiki_convert
7. svn add docs/wiki_convert
8. cd docs
9. svn mv aegisub_convert_docs.pl convert.bat output wiki_convert/
* See r2749 for full description.
Originally committed to SVN as r2752.
2009-03-08 08:30:39 +00:00