Commit graph

72 commits

Author SHA1 Message Date
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
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
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
Amar Takhar
5b356f2755 s/static/const/ to silence gcc warnings.
Originally committed to SVN as r2897.
2009-05-04 06:50:37 +00:00
Amar Takhar
2090994256 Silence a bunch of gcc 'newline' warnings.
Originally committed to SVN as r2896.
2009-05-04 06:50:12 +00:00
Karl Blomster
869e5c7594 Implemented an automated cache cleaner that keeps the FFMS2 index cache at a manageable size. Cleaning is started when video is opened with the FFMS2 video provider and runs in its own thread. Removal is based on last access time, and the FFMS2 providers now explicitly touch the index files on reading to make sure access time is updated.
By default the cache is kept below 42MB and 20 files; to change the defaults change "FFmpegSource max cache size" and "FFmpegSource max cache files" in config.dat. Either or both may be set to 0, but the cleaner will not delete the last index file in the directory, regardless of cache settings and of the file's size.

Originally committed to SVN as r2893.
2009-05-03 18:05:30 +00:00
Karl Blomster
e3ce74248d Fix compilation breakage introduced in r2891.
Originally committed to SVN as r2892.
2009-05-02 20:06:06 +00:00
Karl Blomster
45627548d6 Don't let the MKV parser crash on certain MKV's for which it cannot determine the filesize by itself. (Adaption of Myrsloik's similar fix for FFMS2.)
Originally committed to SVN as r2891.
2009-05-02 19:40:55 +00:00
Niels Martin Hansen
b840c9f97e Ensure some fields in VideoContext get initialised.
Originally committed to SVN as r2888.
2009-04-30 22:13:10 +00:00
Karl Blomster
4445d812ce Re-update the license on Haali's matroska parser.
Originally committed to SVN as r2887.
2009-04-29 21:19:45 +00:00
Karl Blomster
2f7b62d206 Update Haali's MatroskaParser.c/.h in the main source tree (there's a copy in the FFMS2 folder as well, which will be updated later). Should fix a crash with x264-generated MKV's.
Originally committed to SVN as r2884.
2009-04-29 21:00:08 +00:00
Niels Martin Hansen
f0b442f4b4 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
Karl Blomster
1f062a5553 remove duplicate variable
Originally committed to SVN as r2881.
2009-04-29 17:42:48 +00:00
Karl Blomster
9c93aeb179 Fix a few memory leaks in the FFMS2 providers. Patch by Myrsloik.
Originally committed to SVN as r2880.
2009-04-29 17:40:02 +00:00
Karl Blomster
8bc3a39d0c Don't fail to read subtitles from MKV's that are named .mks or .mka, both of those are reported as supported formats in the "open subtitles" dialog box.
Originally committed to SVN as r2878.
2009-04-29 14:04:23 +00:00
Karl Blomster
876f726a6d Don't try to synch audio when there is no audio player/provider present. (Could cause a crash under certain rare conditions.) Thanks Avi for report and fix.
Originally committed to SVN as r2871.
2009-04-28 10:23:20 +00:00
Karl Blomster
9444ebd0d1 Fix some more minor editbox regressions introduced in r2859. Patch by Harukalover, updates #794
Originally committed to SVN as r2861.
2009-04-26 04:31:19 +00:00
Karl Blomster
2ba20b12c8 Fix a minor graphical glitch in the time edit boxes introduced in r2859. Patch by Harukalover. updates #794
Originally committed to SVN as r2860.
2009-04-26 01:23:01 +00:00
Karl Blomster
fe05adb64e Fix a number of odd quirks regarding how grid selection is moved after committing multiple lines, and how audio selection moves after committing. See #794 for full details. Patch by Harukalover.
closes #64, #420, #794

Originally committed to SVN as r2859.
2009-04-26 01:02:23 +00:00
Karl Blomster
c8908fd2d1 Fix a bug that would cause a crash under certain conditions when trying to change the properties of a recently deleted line. Patch by Plorkyeran, closes #815
Originally committed to SVN as r2858.
2009-04-26 00:25:33 +00:00
Karl Blomster
2d11cb6769 Fix a bug that would cause the program to crash if CSRI was selected as subtitle renderer but no CSRI renderer was actually installed. Patch by Plorkyeran, closes: 462
Originally committed to SVN as r2857.
2009-04-26 00:11:29 +00:00
Karl Blomster
78736ce617 Use less magic numbers
Originally committed to SVN as r2856.
2009-04-25 23:08:45 +00:00
Fredrik Mellbin
3655fbb7fa Fix the video provider after the FFMS2 changes part2
Originally committed to SVN as r2852.
2009-04-25 10:31:39 +00:00
Fredrik Mellbin
4c4df5f17a Fix the video provider after the FFMS2 changes
Originally committed to SVN as r2851.
2009-04-25 09:26:03 +00:00
Karl Blomster
22faf80cdb Avisynth video provider will now use ffmpegsource2 instead of ffmpegsource when so required.
Originally committed to SVN as r2838.
2009-04-23 02:09:05 +00:00
Niels Martin Hansen
b842a3ea76 Remove the annoyance known as Tip of the Day. Right now it's completely inaccessible, but might return in a different incarnation when we get out of strings freeze.
Originally committed to SVN as r2831.
2009-04-18 15:29:13 +00:00
Niels Martin Hansen
58ec137621 Simplify code to pick mapping size in PCMWAV provider, just use sizeof(void*) to determine address space size.
Originally committed to SVN as r2830.
2009-04-18 15:16:15 +00:00
Niels Martin Hansen
30422e5ca8 Rename auto3 DLL to something less ugly.
Originally committed to SVN as r2828.
2009-04-18 13:31:08 +00:00
Karl Blomster
c806ba8d72 "Fix" an issue that would cause the FFMS2 audio provider to crash when fed with a unicode filename/path. The solution involves getting the "short path", no idea if it works on Unix. Fixes bugtracker issues #810 and #808.
Originally committed to SVN as r2826.
2009-04-18 10:54:20 +00:00
Karl Blomster
f12a3a8af7 Fix an issue where the grid font face option's font browser button wouldn't actually update the setting. Patch by Harukalover, resolves bugtracker issues #706 and (partially) #821.
Originally committed to SVN as r2824.
2009-04-18 09:12:26 +00:00
Niels Martin Hansen
4fc3b7faf0 No longer support anything for Windows-builds but Visual Studio 2008/VC9.
Remove all outdated, unmaintained project files and some unused dirs, and other stuff related to outdated build methods.

Originally committed to SVN as r2821.
2009-04-17 22:08:37 +00:00
Niels Martin Hansen
af538651ef Some changes to property sheets went unsaved before previous commit, oops.
(This made linking in various things impossible.)

Originally committed to SVN as r2820.
2009-04-17 21:58:17 +00:00
Niels Martin Hansen
2c392407c4 Refactor Visual Studio 2008 build and make libauto3 and Lua 5.0 build on VC9.
* 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.
2009-04-17 21:53:48 +00:00
Niels Martin Hansen
6d1207900b The lines.n value produced by Auto3 implementation was 1 too small causing the last line in a file to be eaten by karaskel.
Originally committed to SVN as r2818.
2009-04-17 21:34:43 +00:00
Niels Martin Hansen
a3600f8ca1 Make callables.c error properly if it's attempted compiled separately.
Originally committed to SVN as r2817.
2009-04-17 20:55:48 +00:00
Niels Martin Hansen
2d64f5079f Make libauto3 better liked by MSVC 2008.
Originally committed to SVN as r2816.
2009-04-17 20:51:58 +00:00
Karl Blomster
80ce8e7508 add portaudio2 audio player to config/config_windows0.h and the vs2008 project file
Originally committed to SVN as r2813.
2009-04-17 19:44:07 +00:00
Karl Blomster
6a69da3331 change buffer length/wanted latency in the dsound2 audio player to 80/4 (down from 100/5); should make it a bit more responsive
Originally committed to SVN as r2812.
2009-04-17 19:40:29 +00:00
Niels Martin Hansen
19b5544a2a Fix crash in PCM audio provider when using files larger than the mapping size (256 MB on 32 bit). The length of mappings closer than mapping-size to the end of the file, when the file was larger, would not be adjusted to not cross the end of file.
Originally committed to SVN as r2810.
2009-04-17 16:34:06 +00:00
Amar Takhar
28470e309d Re-order the functions so they're in line with every other player: Constructor,
Destructor, Open, Close, Play, Stop..  I rue the fact that I didn't do this at
the start.

Originally committed to SVN as r2809.
2009-04-17 13:58:44 +00:00
Amar Takhar
235af35603 * Remove a short-lived hack (hours?) and replace it with a
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.
2009-04-17 02:14:42 +00:00
Amar Takhar
a3f9735d38 * Fold entire callback into a single if-else block.
* Remove 'end' variable and just return 0 if we have more to play.

Originally committed to SVN as r2806.
2009-04-16 20:55:14 +00:00
Amar Takhar
0d7af5f333 * Remove variable 'avail'.
* 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.
2009-04-16 20:49:37 +00:00
Amar Takhar
89fa60082e * Set Pa_OpenStream to use paClipOff as we don't need any clipping
* 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.
2009-04-16 19:55:52 +00:00
Amar Takhar
eebde56363 Make debug printf's a perm fixture wrapped with PORTAUDIO2_DEBUG.
Originally committed to SVN as r2803.
2009-04-16 14:22:46 +00:00
Niels Martin Hansen
bcc8cede88 Forgot to put license on VideoSink.h as well.
Originally committed to SVN as r2802.
2009-04-16 13:01:05 +00:00
Niels Martin Hansen
103c407a64 Clarify license for VideoSink.cpp.
<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.
2009-04-16 12:15:57 +00:00