Several bugfixes which should fix crashes in recent versions
Added a simple regression test application
Removed a few useless functions from the API
Add TheFluff's FFmpegSource 1.21 syntax compatibility script
Originally committed to SVN as r2843.
Remove all outdated, unmaintained project files and some unused dirs, and other stuff related to outdated build methods.
Originally committed to SVN as r2821.
* The most important project properties (especially paths) are now stored in VSProps files in generalised ways.
* Projects share VSProps files so they place output files in same locations and thus agree on where to find them.
* Avoid inconsistencies between build configurations/platforms as has happened often before.
* Now distributable binaries (aegisub.exe and aegisub-auto3.dll) will be placed in $(SolutionDir)/bin/, static libraries under $(SolutionDir)/lib/ and object files etc. under $(SolutionDir)/build/. Note that those locations are controlled by where the solution file is placed in the file system.
* libauto3 is no longer pulled in by a #pragma in auto4_auto3.c, but must instead be pulled in by making the aegisub project depend on the auto3 project, which must in turn depend on the lua50 project.
* Final binary filenames are now somewhat different. You get aegisub32.exe, aegisub64d.exe, aegisub-auto3lib32d.dll and more.
* There's still more that can be factored out, things like optimisation flags and defines.
Originally committed to SVN as r2819.
PaStreamFinishedCallback which is called anytime a PaCallback is exited with
anything other than 0. (normal operation) paStreamFinishedCallback handles
stopping the audio stream when we've run to the end of the current selection
or the stream is stopped.
* Add framesPerBuffer to paCallback debug output in preperation for dynamic
buffers.
* Set paPrimeOutputBuffersUsingStreamCallback in Pa_OpenStream to prime the
output buffer using the callback rather than initing with empty space which
is the default.
* Indent paCallback decleration another level.
Originally committed to SVN as r2807.
* Fold lenAvailable logic into a ternary operator.
* Use GetAduioWithVolume instead of applying volume ourselves.
* Remove code used to zero rest of the buffer. (not required)
Originally committed to SVN as r2805.
* Update comment (realPlayPos has been removed).
* Return from paCallback with paAbort if there is no more audio to play.
Also set endPos to be less than the current playPos to stop the audio
event timer.
* Add CPU usage statistics to debug printf in paCallback.
Originally committed to SVN as r2804.
<jfs> hmm Haali, the VideoSink.cpp you have contributed to aegisub doesn't have a license attached... I see you put MatroskaParser.c into 3-clause BSD like the rest of aegisub though, what about VideoSink ?
<Haali> jfs: BSD license is ok for that file
Originally committed to SVN as r2801.
GetCurrentPosition() to return the correct value using Pa_GetStreamTime(). Not
only does it not work on every platform, there is no point in setting it during
the callback as GetCurrentPosition() isn't called very often (in comparison)
when updating the play bar. Eventually this should be changed to update the
playbar via a callback to get a position that's a lot more accurate.
Originally committed to SVN as r2798.
* Switch from PaOpenDefaultStream to Pa_OpenStream.
* Add Debug output
* Add GetOutputDevices which returns a list of available devices (unused)
Originally committed to SVN as r2796.