Commit graph

2757 commits

Author SHA1 Message Date
Karl Blomster
65e69a51cf "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
caa26103f5 add portaudio_x86.dll to the list of delay-loaded dll's in the vs2008 project file
Originally committed to SVN as r2825.
2009-04-18 09:37:54 +00:00
Karl Blomster
f20737b8b2 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
909275f0df Visual Studio loves not saving property sheets unless told to VERY explicitly. Missed one for Lua 5.0.
Originally committed to SVN as r2823.
2009-04-17 22:39:43 +00:00
Niels Martin Hansen
0fe7719162 Adjust hunspell VC project to also use property sheets.
Originally committed to SVN as r2822.
2009-04-17 22:34:03 +00:00
Niels Martin Hansen
fe393f82af 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
30057004f1 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
77791217a0 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
c55df071cf 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
5a76711a19 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
8a5933385d Make libauto3 better liked by MSVC 2008.
Originally committed to SVN as r2816.
2009-04-17 20:51:58 +00:00
Niels Martin Hansen
b6ae30cc6c Force use of ANSI versions of Windows API's for runtime+loading of DLL's, causing problems when building with UNICODE defined.
Originally committed to SVN as r2815.
2009-04-17 20:20:37 +00:00
Karl Blomster
cc26be476e add portaudio2 player to the vs2005 project as well while I'm at it
Originally committed to SVN as r2814.
2009-04-17 19:45:33 +00:00
Karl Blomster
8a6206e5d0 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
c3afb85af4 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
Karl Blomster
0d6454087e update ffms2.lib
Originally committed to SVN as r2811.
2009-04-17 19:38:12 +00:00
Niels Martin Hansen
7a19b273b1 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
49e3895180 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
Karl Blomster
d77c119d63 Fix a bug in FFMS2 that caused it to write timecodes with scientific notation.
Originally committed to SVN as r2808.
2009-04-17 03:25:10 +00:00
Amar Takhar
6c256fd181 * 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
50ce42d2e9 * 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
eb65009f66 * 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
c6364bf43d * 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
3e864d10c9 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
7271a74b54 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
4da7a70608 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
Amar Takhar
50214a2a6a Move the comment for the PortAudio library to setup.cpp.
Requested by: TheFluff

Originally committed to SVN as r2800.
2009-04-15 20:16:54 +00:00
Amar Takhar
50b7f33117 Don't initalise favorite to 0 (it's a a wxString).
Originally committed to SVN as r2799.
2009-04-15 20:11:53 +00:00
Amar Takhar
918945e03b Don't set the current position via the PortAudio callback, instead set
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.
2009-04-15 17:50:16 +00:00
Amar Takhar
b63c2ea27c Add hidden option 'Audio PortAudio Device' to set the default portaudio output device.
Originally committed to SVN as r2797.
2009-04-15 11:26:43 +00:00
Amar Takhar
aa85b2eb01 * Fix paCallback decleration
* 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.
2009-04-15 10:26:22 +00:00
Niels Martin Hansen
558be555e2 Make the default ALSA device default.
(It should be "default", not "default:0" as the old default was.)

Originally committed to SVN as r2795.
2009-04-13 17:08:13 +00:00
Amar Takhar
2d6ba0cb22 Move FOUND_AUDIO_PLAYER above the rest of the audio players to preserve
link ordering.  Also add libaudio_player.a to the final link.

Originally committed to SVN as r2794.
2009-04-12 10:52:40 +00:00
Amar Takhar
dc34db7f62 Early morning code-o, setting AM_CONDITIONAL _after_ the Makefiles are
generated isn't going to work very well.

Originally committed to SVN as r2793.
2009-04-12 10:48:20 +00:00
Amar Takhar
733814793e * Update comment
* Include audio_player_portaudio2.h instead of audio_player_portaudio.h.

Originally committed to SVN as r2792.
2009-04-12 10:30:38 +00:00
Amar Takhar
8dab71e974 Split audio_player.cpp into it's own convenience to avoid sending audio library
CFLAGS to every source file.

Originally committed to SVN as r2791.
2009-04-12 10:30:07 +00:00
Amar Takhar
95e9ccaf79 Add support for ALSA_(LD|C)FLAGS.
Originally committed to SVN as r2790.
2009-04-12 10:28:42 +00:00
Amar Takhar
21460ec589 Add block for WITH_PORTAUDIO2.
Originally committed to SVN as r2789.
2009-04-12 10:08:59 +00:00
Amar Takhar
d71cbda47b * s/$found_audio/$found_audio_player/ for clarity.
* Add AM_CONDITIONAL for FOUND_AUDIO_PLAYER and FOUND_VIDEO_PROVIDER.

Originally committed to SVN as r2788.
2009-04-12 10:08:28 +00:00
Amar Takhar
579b46f097 Update PortAudio v19 support.
Originally committed to SVN as r2787.
2009-04-12 10:04:10 +00:00
Amar Takhar
b89ec65c43 Move the PortAudio v19 check above the v18 check.
Originally committed to SVN as r2786.
2009-04-11 23:40:15 +00:00
Amar Takhar
97c857a94f Add 'PortAudio2' as an audio player.
Originally committed to SVN as r2785.
2009-04-11 23:23:30 +00:00
Amar Takhar
3247ad6c6c Change WITH_PORTAUDIO -> WITH_PORTAUDIO2
Originally committed to SVN as r2784.
2009-04-11 23:18:04 +00:00
Amar Takhar
e61d0b77ac Update audio_player_portaudio2.* for PortAudio v19.
Originally committed to SVN as r2783.
2009-04-11 23:16:58 +00:00
Amar Takhar
23eea68fdd Verbatium copy of audio_player_portaudio.* -> audio_player_portaudio2.*
Originally committed to SVN as r2782.
2009-04-11 23:15:45 +00:00
Fredrik Mellbin
d39d308d0d FFMS2 GCC compilation fix
Originally committed to SVN as r2781.
2009-04-11 19:43:18 +00:00
Fredrik Mellbin
6878e5884a FFMS2 beta 6 (the real commit)
Requires a recent FFmpeg
Changes the HAALITS define into HAALISOURCE

Originally committed to SVN as r2780.
2009-04-11 18:45:40 +00:00
Amar Takhar
5f5960ef00 * Fix check for libavutil/pixfmt.h
* Add detection for PortAudio2 (v19)

Originally committed to SVN as r2779.
2009-04-11 18:06:23 +00:00
Amar Takhar
26e427e838 Add a check for libavutil/pixfmt.h as a low-brow check for FFMPEG r18129+, this
needs to be fixed to check exact versions of the library.  For now this should
work.

Originally committed to SVN as r2778.
2009-04-11 08:13:09 +00:00
Amar Takhar
d642bb37ab Fix an error message to be clearer.
Originally committed to SVN as r2777.
2009-04-11 07:51:50 +00:00