Moritz Bunkus
f681458bfc
tests: provide global vars distinguishing platforms
2021-07-06 20:27:41 +02:00
Moritz Bunkus
4ab5d81ce1
tests: fix determining number of processors on non-macOS
2021-07-06 20:27:39 +02:00
Moritz Bunkus
133fca6093
mm_io_c::puts: add option for writing Unix-style newlines on Windows
2021-07-06 20:27:38 +02:00
Moritz Bunkus
b283b8b2dd
tests: skip 562 on 32-bit platforms
2021-07-06 13:21:52 +02:00
Moritz Bunkus
bdfa8171c4
FLV reader: use rationals instead of doubles for calculating default duration
2021-07-06 13:21:52 +02:00
Moritz Bunkus
49549d871b
MP4 reader: properly convert rational to int
2021-07-06 13:21:52 +02:00
Moritz Bunkus
b842bf6cdd
Theora parser: use rationals for calculation of display dimensions
2021-07-06 10:17:10 +02:00
Moritz Bunkus
b0748b33c0
AVC & HEVC parsers: use rationals for calculation of display dimensions
2021-07-06 10:16:57 +02:00
Moritz Bunkus
0f7f8b9d68
WavPack packetizer: use rationals for calculation of timestamps & durations
2021-07-06 10:01:59 +02:00
Moritz Bunkus
12ca5cc267
TTA packetizer: use rationals for calculation of timestamps & durations
2021-07-06 09:58:33 +02:00
Moritz Bunkus
28bcaf876c
MPEG 1/2 packetizer: use rationals for calculation of aspect ratio
2021-07-06 09:52:13 +02:00
Moritz Bunkus
e74c054d7c
Kate packetizer: use rationals for calculation of timestamps & durations
2021-07-06 09:37:33 +02:00
Moritz Bunkus
188436f981
AVC & HEVC packetizers: use rationals for calculation of display dimensions
2021-07-06 09:37:21 +02:00
Moritz Bunkus
4b74b43fdb
Ogg/OGM reader: use rationals for calculation of display dimensions & frame rate
2021-07-06 09:23:26 +02:00
Moritz Bunkus
9e1c043a31
AVI reader: use rationals for calculation of display dimensions
2021-07-06 09:23:23 +02:00
Moritz Bunkus
5b9536cbf8
MPEG 1/2 parser & readers: store aspect ratio as rational, not as double
2021-07-06 09:13:49 +02:00
Moritz Bunkus
4520fc1859
MPEG 1/2 parser & readers: store default duration as rational, not frame rate as double
2021-07-05 20:21:15 +02:00
Moritz Bunkus
683986f090
MPEG TS reader: store default duration as rational, not frame rate as double
2021-07-05 19:52:50 +02:00
Moritz Bunkus
d1807de809
AVI reader: store default duration as rational, not frame rate as double
2021-07-05 17:42:16 +02:00
Moritz Bunkus
2696740c01
math: add rounding-conversion functions for rationals
2021-07-05 17:37:26 +02:00
Moritz Bunkus
6d0758a74a
Matroska reader: store default duration as int64_t, not FPS as double
2021-07-05 16:42:27 +02:00
Moritz Bunkus
6ddd872713
convert video packetizers to take int64_t default duration, not double FPS
2021-07-05 15:56:21 +02:00
Moritz Bunkus
4c57df14ea
MPEG PS, ES readers: fix display width calculation on 32-bit platforms
2021-07-05 13:25:12 +02:00
Moritz Bunkus
89ae6c11d6
tests: re-do runtimes for each test case
2021-07-05 13:19:41 +02:00
Moritz Bunkus
eac9b4971f
tests: use shorter file for test 493
2021-07-04 22:36:23 +02:00
Moritz Bunkus
445306ca0f
cast mpq_rational to int64_t via int128_t
...
Casting directly from certain values of
`boost::multiprecision::mpq_rational` via `static_cast<int64_t>()`
fails on certain platforms (32-bit ones, mingw both 32 & 64-bit). A
workaround seems to be to convert to `boost::multiprecision::int128_t`
first.
See https://github.com/boostorg/multiprecision/issues/342
2021-07-04 21:08:35 +02:00
Moritz Bunkus
5344602025
fix compilation with older versions of Boost's multi-precision library
...
The older versions have incomplete constructors for
`boost::multiprecision::number` when used with the `gmp_rational`
backend. When trying to specify both a numerator and a denominator,
the numerator argument is supposed to be a `gmp_rational` while the
denominator can only be an (unsigned) int. This means that trying to
pass a 64-bit integer as the denominator will not work as no matching
constructor is found.
The workaround is to convert both the numerator and the denominator to
instances of `…number<gmp_rational>` and passing those to the
constructor of `…number<gmp_rational>`.
2021-07-04 16:56:35 +02:00
Moritz Bunkus
96268fa972
macOS build: build the gmp library
2021-07-04 14:03:39 +02:00
Moritz Bunkus
7a21dcc7ed
MXE setup: remove the file library
2021-07-04 12:50:34 +02:00
Moritz Bunkus
e285856943
MXE setup: compile the gmp library
2021-07-04 12:49:25 +02:00
Moritz Bunkus
95a1fa6ac8
MXE setup: use gcc 10
2021-07-04 12:49:17 +02:00
Moritz Bunkus
2f22fecc6d
use boost::multiprecision for rationals instead of boost::rational
2021-07-04 12:44:36 +02:00
Moritz Bunkus
32f3cdc2fd
rename type int64_rational_c to mtx_mp_rational_t
2021-07-04 12:44:36 +02:00
Moritz Bunkus
020f053ad7
include Boost's multi-precision type in common.h; declare own type for it
2021-07-04 12:44:36 +02:00
Moritz Bunkus
213ed8514a
use gmp backend for Boost Multiprecision
2021-07-04 12:44:36 +02:00
Moritz Bunkus
409bfbe460
Revert "GUI: source file: use = default for copy constructor"
...
This reverts commit b46089387c
.
With the patch applied the default copy constructor only copies the
shared pointers to the other files & tracks & attachments — but we
need a deep copy here. Otherwise invalid memory access will happen (or
rather, the GUI's `MuxConfig::verifyStructure()` recognizes the
problem and aborts with the message "track->m_file == nullptr in level
0 file").
Fixes #3157 .
2021-06-30 14:54:14 +02:00
Moritz Bunkus
282a86caf1
GUI: fix compilation
2021-06-29 20:00:39 +02:00
Moritz Bunkus
ee6e0816dc
remove unnecessary [[maybe_unused]]
2021-06-29 20:00:15 +02:00
Moritz Bunkus
7b94a3cef6
fix compilation
2021-06-29 17:01:45 +02:00
Andrei Stepanov
67aae7ba3f
translations: update Russian
2021-06-29 16:43:14 +02:00
Roberto Boriotti
db8146006c
translations: update Italian
2021-06-29 16:43:07 +02:00
TMTisFree
f237df4e7d
translations: update French
2021-06-29 16:43:01 +02:00
Israel Lucas Torrijos
521ac058b2
translations: update Spanish
2021-06-29 16:42:54 +02:00
Antoni Bella Pérez
1813edf205
translations: update Catalan
2021-06-29 16:42:43 +02:00
Симеон Цветков
198f9b3f83
translations: update Bulgarian
2021-06-29 16:42:20 +02:00
Симеон Цветков
c0f668caa8
man page translations: update Bulgarian
2021-06-29 16:42:13 +02:00
Moritz Bunkus
ba1e50e877
GUI: mux: show command line: use \ for cmd.exe, / for Linux shells
...
Fixes #3155 .
2021-06-29 16:29:32 +02:00
Moritz Bunkus
c80a3b576b
NEWS: be more specific where to find newly added options
2021-06-27 19:14:11 +02:00
Moritz Bunkus
98fc252fa7
translations: update list of translatable strings; update German translation
2021-06-27 19:14:11 +02:00
Moritz Bunkus
450ac94fdd
GUI: prefs: make file/track colors configurable
2021-06-27 19:14:11 +02:00