Commit graph

124 commits

Author SHA1 Message Date
arch1t3cht
b3eb182259 Merge branch 'bugfixes' into feature 2023-10-13 23:56:15 +02:00
arch1t3cht
b8f4c98c4c Move iconv include to charset_conv.h
On newer mac sdks iconv_t is defined differently, so it's harder to
just have a typedef for it.
2023-10-13 23:52:26 +02:00
arch1t3cht
02567c2265 Rework the audio/video provider system
This became necessary now that more providers were added. Providers can
be proritized for certain file types (e.g. .vpy files will always be
opened with VapourSynth), and when the default provider fails on a file,
the user will be notified and be asked to pick an alternative provider.
2023-07-16 17:52:21 +02:00
arch1t3cht
9e8ac83998 Merge branches 'vapoursynth' and 'info' into feature 2023-06-11 01:22:14 +02:00
arch1t3cht
d06a31968d vapoursynth: Add buttons to set default scripts to default 2023-06-08 18:41:12 +02:00
arch1t3cht
dba4f4924e Merge branches 'lua_api' and 'bugfixes' into feature 2023-05-29 14:52:31 +02:00
arch1t3cht
42f7e53e92 lua: Don't check_stack in LuaCheckStack destructor
This would cause an assertion failure in functions like lua_for_each
when the given closure throws an error and thus leaves some  values on
the stack. This can make Aegisub crash entirely instead of just catching
and reporting the error. Instead, these stack_checks can be done
manually.
2023-05-22 09:23:22 +02:00
arch1t3cht
6f073c6a31 Merge branch 'vapoursynth' into feature 2023-02-24 01:42:58 +01:00
arch1t3cht
1f2eaaf6e4 vapoursynth: Show logged messages in progress window 2023-02-24 01:42:30 +01:00
arch1t3cht
9d4a67b523 Merge branches 'info', 'video_panning_option', 'fixes', 'misc', 'vapoursynth' and 'wangqr_gui' into feature 2022-11-03 00:03:23 +01:00
arch1t3cht
7ddfef7517 Add syntax highlighting for drawings and vector clips
The highlighting distinguishes drawing commands from coordinates, and
colors x and y coordinates in different colors to make coordinates
easier to visually parse. Furthermore, in cubic Bezier curves, it
underlines the coordinates which corresponds to endpoints of the curves.
2022-11-02 23:58:01 +01:00
arch1t3cht
819d90e9b0 Stereo playback on Linux audio players
After the audio provider rework, adjust the audio players to not
use the int16 mono downmixed audio unless necessary. Furthermore,
the pulseaudio-based player now controls the volume directly through
pulseaudio instead of by modifying the buffer. This also reduces latency
when changing the volume.

The entire set of GetAudio functions is quite messy now. After wangqr's
audio rework, it was split into GetAudio and GetInt16MonoAudio
functions, but now volume scaling is also necessary. Really, this should
go back to a type constructor based system with audio players being
allowed to choose what properties out of mono / 16 bytes / int samples /
volume they need.
2022-08-18 22:48:40 +02:00
arch1t3cht
0b8f5ad8fa XAudio PR: Revert some changes and fix on linux
Mostly synchronizing with the updates made to the ffmpeg audio provider
and removing the CMakeLists.txt
2022-08-16 21:03:59 +02:00
Ristellise
fd28458ed8 Implement wangqr Audio Changes:
- To allow for XAudio2 to work properly, we need to rework how does provider work since they only are used to be able to take in mono audio.
 - Other providers have been dumbed down to accept single channel audio since originally aegisub only accepted 1 channel audio.
 - meson.build has been modified to accommodate for xaudio, as we currently don't accept redistributable forms of xaudio, we need to work around the WinNT version.
 - There has been 1 more fix to res.rc to allow for compiling on non tagged releases.
2022-08-10 21:09:41 +08:00
arch1t3cht
6e811ef6a7 Fix compile error on linux 2022-07-02 19:58:43 -07:00
Ryan
d583744b69 Merge in work from TypesettingTools fork 2021-01-16 02:12:31 -05:00
line0
b8e2cf83fd fix PCHs on VS2019
* separate PCH for C and C++
* acconf.h now included in PCHs on windows, too
* meson now auto-generates companion source files for PCH headers
2021-01-10 03:14:12 -05:00
Ryan Lucia
9708ca8e5e Add virtual destructor to SignalBase
Quashes a frequent warning
2021-01-10 03:14:12 -05:00
Ryan Lucia
3b2d770d74 Fix PCH usage
Hopefully this time in a way that doesn't ruin life for Unix folks!
2021-01-10 03:14:12 -05:00
Martin Herkt
8905921a2d Initial port of the build system to Meson
Still some TODOs left. Probably only works on Linux for now.
2021-01-10 03:14:12 -05:00
wangqr
9ed381f498 Remove extra semicolon 2019-09-22 17:41:02 -07:00
wangqr
5d4973a5f6 Fix millisecond to centisecond convertion
Fix Aegisub/Aegisub#94
2019-09-22 17:12:05 -07:00
Ryan Lucia
a621072e7d Add support for WWXD keyframes in qpfile format 2018-05-10 03:28:51 -04:00
Thomas Goyne
45315476bd Switch to a maintained fork of universalchardet 2016-02-09 20:29:29 -08:00
Thomas Goyne
4366e59353 Update to Visual Studio 2015 2015-07-30 19:20:10 -07:00
Thomas Goyne
d5dde6cff2 Reduce error-handling bloat a bit 2015-07-28 16:22:48 -07:00
Thomas Goyne
b0f4c9f1ad Remove agi::vfr::Framerate's explicit swap implementation 2015-07-28 14:30:03 -07:00
Thomas Goyne
fefa31eb47 Improve code coverage of tests 2015-07-28 14:30:03 -07:00
Thomas Goyne
74ac2ab1fe Extract some more find/replace logic to libaegisub 2015-07-27 10:29:22 -07:00
Thomas Goyne
879788fe83 Eliminate some gratuitous exceptions 2015-02-15 08:19:10 -08:00
Thomas Goyne
5d8aeb8b40 Replace most remaining uses of boost::split with agi::Split 2015-02-08 08:11:14 -08:00
Thomas Goyne
01558bf10d Fix type_name compilation on OS X
Reverts 2986932f31. There are more types
of ints than sizes of ints, so using the stdint types doesn't work.
2015-02-07 14:56:50 -08:00
Thomas Goyne
427037a552 Reimplement boost::split_iterator to make it less slow
boost::split_iterator type-erases the predicate, which makes it require
a virtual call per character (!) along with a heap allocation. As it
turns out we only ever need one predicate (comparing to a single
character), so replace it with a split_iterator that just does that.
2015-02-07 14:56:27 -08:00
Niels Martin Hansen
2986932f31 Fix issues with type_name on Win64 build
Both size_t and unsigned long long are aliases for
unsigned __int64 on Win64, and causes a duplicate definition.
Replacing all the integer type_name definitions with stdint.h
names should avoid this problem.
2015-01-20 21:22:14 +01:00
Thomas Goyne
b6edf58651 Eliminate some object file bloat 2015-01-01 10:23:59 -08:00
Thomas Goyne
b29fcd4f89 Add some extern template declarations for stuff with vtables 2014-12-28 20:43:29 -08:00
Thomas Goyne
e485c469e2 Pull some of OptionValue to a cpp file 2014-12-28 20:21:48 -08:00
Thomas Goyne
5089499e8b Remove Excetipion's virtual destructor 2014-12-28 19:52:42 -08:00
Thomas Goyne
a6b1639320 Extract some bits that don't need to be templated from templates
Cuts compile time by about 10% and shrinks the final binary a little.
2014-12-28 16:46:38 -08:00
Thomas Goyne
5201773a3b Slightly optimize returning strings to lua from ffi functions 2014-12-28 16:46:37 -08:00
Thomas Goyne
010f6c4f79 Debloatify some stuff 2014-12-28 12:30:01 -08:00
Thomas Goyne
76afcdafa1 Eliminate uses of dynamic_cast on everything but GUI widgets 2014-12-28 12:29:54 -08:00
Thomas Goyne
44506eae56 Fix compilation with compilers with non-totally-broken templates 2014-12-24 16:46:51 -08:00
Thomas Goyne
0a18fe6cd3 Fix stack corruption when a script tries to select an invalid line 2014-12-24 16:24:51 -08:00
Thomas Goyne
416b9809c8 Update boost to 1.56
Closes #1818.
2014-08-16 14:01:58 -07:00
Thomas Goyne
a01a84fb4f Extract some common ffi API stuff 2014-07-28 12:30:44 -07:00
Thomas Goyne
0cf35894e1 Convert the lfs module to using the ffi 2014-07-28 12:30:44 -07:00
Thomas Goyne
cf252fa91a Add simple type -> type name string compile time reflection stuff
This is needed for passing types to the LuaJIT ffi.
2014-07-28 12:30:44 -07:00
Thomas Goyne
de686bdb6f Remove the automation thread priority stuff
It hasn't actually been used for anything for a while, and if a single
normal-priority thread can make your system unresponsive it's time to
upgrade to an OS that's isn't garbage.
2014-07-23 15:29:55 -07:00
Thomas Goyne
584284aa79 Reject vfr timecodes which are all identical 2014-07-15 09:11:40 -07:00