Commit Graph

13647 Commits

Author SHA1 Message Date
Moritz Bunkus
11584c416a
BCP 47: use emplace_back for initialization of IANA language subtag registries
It's much faster than using the initializer lists. See previous commit
for more details.
2021-01-26 14:53:31 +01:00
Moritz Bunkus
5276839f16
BCP 47: use emplace_back for initialization of ISO 639 language list
It's much faster than using the initializer lists. Here's the result
from a micro benchmark I ran:

2021-01-25T23:49:20+01:00
Running ./bench.g++
Run on (8 X 4500 MHz CPU s)
CPU Caches:
  L1 Data 32 KiB (x4)
  L1 Instruction 32 KiB (x4)
  L2 Unified 256 KiB (x4)
  L3 Unified 8192 KiB (x1)
Load Average: 1.08, 0.72, 0.60
-------------------------------------------------------------
Benchmark                   Time             CPU   Iterations
-------------------------------------------------------------
BM_InitializerList      59667 ns        59625 ns        70526
BM_EmplaceBack          24515 ns        24497 ns       176817
BM_EmplaceBack2         16970 ns        16961 ns       247652
BM_PushBack             52831 ns        52796 ns        79202
BM_PushBack2            52858 ns        52823 ns        79004

The five benchmarks were:

• BM_InitializerList — the old way with initializer lists. Basically
  the same code currently being replaced.

• BM_EmplaceBack — Reserving space & adding each entry with
  g_languages.emplace_back(). A constructor was added to language_t
  struct taking the std::strings as const references (std::string
  const &), assigning them to the member variables normally.

• BM_EmplaceBack2 — Reserving space & adding each entry with
  g_languages.emplace_back(). A constructor was added to language_t
  struct taking the std::strings as rvalue references (std::string &&)
  assigning them to the member variables using std::move().

• BM_PushBack — Reserving space & adding each entry with
  g_languages.push_back(). A constructor was added to language_t
  struct taking the std::strings as const references (std::string
  const &), assigning them to the member variables normally.

• BM_PushBack2 — Reserving space & adding each entry with
  g_languages.push_back(). A constructor was added to language_t
  struct taking the std::strings as rvalue references (std::string &&)
  assigning them to the member variables using std::move().
2021-01-26 14:53:30 +01:00
Moritz Bunkus
373a327fb1
BCP 47: use table formatter for outputting list of languages 2021-01-26 14:53:30 +01:00
Moritz Bunkus
16185c6084
table formatter: formatting tabular data as a string 2021-01-26 14:53:30 +01:00
Moritz Bunkus
68a38909d4
BCP 47: ISO 639 code list: include bool to say if part of ISO 639-2
Part of #3007.
2021-01-26 14:53:30 +01:00
Moritz Bunkus
ed309582ce
BCP 47: various lists: cosmetics (remove superfluous space at end of row) 2021-01-26 14:53:30 +01:00
Moritz Bunkus
cd3a592f6e
BCP 47: rename get_iso639_alpha_3_code_or to get get_iso639_2_alpha_3_code_or
Preparation for implementing support for ISO 639-3 codes.

Part of #3007.
2021-01-26 14:53:30 +01:00
Симеон Цветков
174c8254ec Update org.bunkus.mkvtoolnix-gui.appdata.xml: WebM MimeTypes 2021-01-26 11:34:54 +00:00
Симеон Цветков
c2d0e2bd40 Update org.bunkus.mkvtoolnix-gui.desktop: added WebM MimeTypes 2021-01-26 11:33:01 +00:00
Симеон Цветков
5dbdab01a2 Update org.bunkus.mkvtoolnix-gui.desktop: added BG translation 2021-01-26 11:02:23 +00:00
Симеон Цветков
2e7765f3eb Update org.bunkus.mkvtoolnix-gui.desktop: added MimeType "video/x-matroska-3d"
as defined in the Matroska Specification: https://www.matroska.org/technical/notes.html
2021-01-26 10:57:45 +00:00
Симеон Цветков
5beb663322 Update org.bunkus.mkvtoolnix-gui.xml: BG and FR translation 2021-01-26 10:54:12 +00:00
Симеон Цветков
c097f3ee4e Update org.bunkus.mkvtoolnix-gui.appdata.xml: added mimetype "video/x-matroska-3d"
as defined in the Matroska Specification: https://www.matroska.org/technical/notes.html
2021-01-26 10:43:19 +00:00
Moritz Bunkus
6a0c222341
Merge branch 'patch-4' of https://gitlab.com/moni33/mkvtoolnix 2021-01-24 13:57:04 +01:00
Moritz Bunkus
9c7c759cbc
AUTHORS: add Tom Yan 2021-01-24 13:55:00 +01:00
Moritz Bunkus
a7bfe57de8
NEWS: add entry for fixing wrong default duration header for MPEG 1/2 video 2021-01-24 13:54:30 +01:00
Moritz Bunkus
c345f738e5
tests: update results for revision 7bcbf50a85 2021-01-24 13:53:51 +01:00
Moritz Bunkus
81f81bb674
Merge branch 'mpeg12' of https://gitlab.com/tomty89/mkvtoolnix 2021-01-24 13:31:14 +01:00
Moritz Bunkus
d20363a4d2
Merge branch 'm2v_gfd' of https://gitlab.com/tomty89/mkvtoolnix 2021-01-24 13:28:49 +01:00
Tom Yan
3b00d9c642 M2VParser: fix / simplify GetFrameDuration()
Picture structure can be type frame even if the frame is not marked
as progressive.
2021-01-24 16:07:22 +08:00
Danko
52bd2dab6d
translations: update Serbian Latin 2021-01-23 11:37:51 +01:00
Burak Yavuz
062a7e2c26
translations: update Turkish 2021-01-23 11:34:37 +01:00
Timofey Lisunov
9e3e8f205b
translations: update Russian 2021-01-23 11:34:26 +01:00
Roberto Boriotti
ab4b69161a
translations: update Italian 2021-01-23 11:34:09 +01:00
TMTisFree
e699858dd2
translations: update French 2021-01-23 11:33:58 +01:00
Israel Lucas Torrijos
7f873809e1
translations: update Spanish 2021-01-23 11:33:52 +01:00
Moritz Bunkus
fb1f3fe97e
AUTHORS: add another translator 2021-01-23 11:33:39 +01:00
wck317
3e8cd190aa
translations: update Chinese Traditional 2021-01-23 11:33:05 +01:00
Kai Mao
2be2e556f6
man page translations: update Chinese Traditional 2021-01-23 11:32:13 +01:00
Tom Yan
7bcbf50a85 mpeg_{ps,es}: do not use field rate as "fps"
The behavior is inconsistent to that of the other modules (r_mpeg_ts,
r_avi and p_mpeg_1_2).

Besides, at least ffmpeg will not consider the default duration to
be derived from field rate.
2021-01-20 15:11:33 +08:00
Tom Yan
633695057d MPEGVideo: get rid of nonsensical frameOrFieldRate
The name does not reflect the actual nature of the variable. Its value
is always set to the frame rate and will never be converted (in-place)
to the corresponding "field rate".
2021-01-20 15:06:19 +08:00
Moritz Bunkus
aaa869843d
mkvmerge: Matroska reader: don't copy SOURCE_ID track tags with --no-track-tags 2021-01-19 20:02:49 +01:00
Moritz Bunkus
b48a53487a
translations: update list of translatable strings; update German translation 2021-01-15 21:45:37 +01:00
Moritz Bunkus
032fcf156a
mkvextract: verify no destination file name equals the source file name
Implements #3001.
2021-01-15 21:44:29 +01:00
Moritz Bunkus
80bcaaa7d7
NEWS: update for fixing #3002 2021-01-15 20:25:22 +01:00
Moritz Bunkus
082f250a58
translations: update list of translatable strings; update German translation 2021-01-15 20:12:39 +01:00
Moritz Bunkus
da375b7ee0
GUI: header editor: change menu entry text to avoid ambiguous translation 2021-01-15 20:11:06 +01:00
Moritz Bunkus
17aee31074
translations: update list of translatable strings; update German translation 2021-01-15 20:09:55 +01:00
Moritz Bunkus
d9793ffd5f
AUTHORS: add translator Fúlvio Alves 2021-01-15 20:06:46 +01:00
Fúlvio Alves
8218bfda64
translations: update Brazilian Portuguese 2021-01-15 20:05:55 +01:00
Roberto Boriotti
172c1fb5e4
translations: update Italian 2021-01-15 20:04:19 +01:00
TMTisFree
0b97c698a5
translations: update French 2021-01-15 20:04:09 +01:00
Antoni Bella Pérez
c945bab84f
translations: update Catalan 2021-01-15 20:04:03 +01:00
Moritz Bunkus
c72501416e
GUI: mux: correct tooltip for "stretch by" inputs wrt. fractions
Part of the implementation of #3002.
2021-01-15 19:59:28 +01:00
Moritz Bunkus
f3ee29d7d5
chapters: make mtx::chapters::adjust_timestamp take int64_rational_c argument 2021-01-15 19:57:47 +01:00
Moritz Bunkus
38b5beb0cf
merge: use int64_rational_c in timestamp_sync_t
Part of the implementation of #3002.
2021-01-15 18:17:47 +01:00
Moritz Bunkus
43d7ab1575
math: add function for parsing floating point numbers to int64_rational_c
Part of the implementation of #3002.
2021-01-14 22:32:27 +01:00
Moritz Bunkus
4c4754ef5f
GUI: preferences: make pre-defined items renamable with double click/F2 2021-01-13 11:49:09 +01:00
Moritz Bunkus
4b1d223d45
GUI: mux: show pre-defined track names in order given in preferences
Fixes #2999.
2021-01-13 11:10:24 +01:00
Moritz Bunkus
1b1f98b06c
Windows installer: install bluray_dump tool in "tools" sub-dir 2021-01-10 15:22:43 +01:00