Changes of Revision 35

makemkv.changes Changed
x
 
1
@@ -1,4 +1,9 @@
2
 -------------------------------------------------------------------
3
+Fri Oct 28 22:22:00 UTC 2016 - neutrino8@gmail.com
4
+
5
+- Update to version 1.10.2
6
+
7
+-------------------------------------------------------------------
8
 Tue Sep 22 13:12:21 UTC 2015 - olaf@aepfle.de
9
 
10
 - update to 1.9.5
11
makemkv.spec Changed
23
 
1
@@ -28,7 +28,7 @@
2
 
3
 Name:           makemkv
4
 Summary:        DVD and BlueRay Ripping tool
5
-Version:        1.9.5
6
+Version:        1.10.2
7
 Release:        0.pm.1
8
 License:        see eula_en_linux.txt
9
 Group:          Productivity/Multimedia/Video/Editors and Convertors
10
@@ -119,10 +119,10 @@
11
 
12
 %build
13
 %configure
14
-%{__make} %{?jobs:-j%{jobs}}
15
+%{__make} %{?_smp_mflags}
16
 
17
 %install
18
-%makeinstall
19
+%make_install
20
 %suse_update_desktop_file -c makemkv makemkv "makemkv" makemkv makemkv.png AudioVideo AudioVideoEditing
21
 tar xaf %{SOURCE1}
22
 %ifarch x86_64
23
makemkv-bin-1.9.5.tar.xz/Makefile -> makemkv-bin-1.10.2.tar.xz/Makefile Changed
15
 
1
@@ -45,6 +45,7 @@
2
    install -m 644 -t $(DESTDIR)$(PREFIX)/share/MakeMKV src/share/flac.mmcp.xml
3
    install -m 644 -t $(DESTDIR)$(PREFIX)/share/MakeMKV src/share/wdtv.mmcp.xml
4
    install -m 644 -t $(DESTDIR)$(PREFIX)/share/MakeMKV src/share/aac-stereo.mmcp.xml
5
+   install -m 644 -t $(DESTDIR)$(PREFIX)/share/MakeMKV src/share/blues.jar
6
    install -m 644 -t $(DESTDIR)$(PREFIX)/share/MakeMKV src/share/makemkv_deu.mo.gz
7
    install -m 644 -t $(DESTDIR)$(PREFIX)/share/MakeMKV src/share/makemkv_jpn.mo.gz
8
    install -m 644 -t $(DESTDIR)$(PREFIX)/share/MakeMKV src/share/makemkv_spa.mo.gz
9
@@ -57,4 +58,5 @@
10
    install -m 644 -t $(DESTDIR)$(PREFIX)/share/MakeMKV src/share/makemkv_pol.mo.gz
11
    install -m 644 -t $(DESTDIR)$(PREFIX)/share/MakeMKV src/share/makemkv_dan.mo.gz
12
    install -m 644 -t $(DESTDIR)$(PREFIX)/share/MakeMKV src/share/makemkv_fra.mo.gz
13
+   install -m 644 -t $(DESTDIR)$(PREFIX)/share/MakeMKV src/share/makemkv_per.mo.gz
14
 
15
makemkv-bin-1.9.5.tar.xz/bin/amd64/makemkvcon -> makemkv-bin-1.10.2.tar.xz/bin/amd64/makemkvcon Changed
makemkv-bin-1.9.5.tar.xz/bin/i386/makemkvcon -> makemkv-bin-1.10.2.tar.xz/bin/i386/makemkvcon Changed
makemkv-bin-1.9.5.tar.xz/bin/i386/mmdtsdec -> makemkv-bin-1.10.2.tar.xz/bin/i386/mmdtsdec Changed
makemkv-bin-1.9.5.tar.xz/src/eula_en_linux.txt -> makemkv-bin-1.10.2.tar.xz/src/eula_en_linux.txt Changed
201
 
1
@@ -1,4 +1,4 @@
2
-Copyright (C) 2007-2015 GuinpinSoft inc
3
+Copyright (C) 2007-2016 GuinpinSoft inc
4
 
5
 IMPORTANT NOTE
6
 
7
@@ -64,9 +64,352 @@
8
 Any variation to the terms of this Agreement shall only be valid if made in writing by GuinpinSoft inc.
9
 
10
 Appendix A
11
-This installation package does not contain any Open-source Software components.
12
+List of Open-source Software components
13
+
14
+The java application in file blues.jar is licensed under GNU GPL. All other files and files without explicit license information are licensed under terms of this Agreement.
15
 
16
 Appendix B
17
-There are no open-source licenses applicable to this package.
18
+Full text of open-source licenses:
19
+
20
+-------------------------------------------------------------------------------
21
+           GNU GENERAL PUBLIC LICENSE
22
+              Version 2, June 1991
23
+
24
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
25
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
26
+ Everyone is permitted to copy and distribute verbatim copies
27
+ of this license document, but changing it is not allowed.
28
+
29
+               Preamble
30
+
31
+  The licenses for most software are designed to take away your
32
+freedom to share and change it.  By contrast, the GNU General Public
33
+License is intended to guarantee your freedom to share and change free
34
+software--to make sure the software is free for all its users.  This
35
+General Public License applies to most of the Free Software
36
+Foundation's software and to any other program whose authors commit to
37
+using it.  (Some other Free Software Foundation software is covered by
38
+the GNU Lesser General Public License instead.)  You can apply it to
39
+your programs, too.
40
+
41
+  When we speak of free software, we are referring to freedom, not
42
+price.  Our General Public Licenses are designed to make sure that you
43
+have the freedom to distribute copies of free software (and charge for
44
+this service if you wish), that you receive source code or can get it
45
+if you want it, that you can change the software or use pieces of it
46
+in new free programs; and that you know you can do these things.
47
+
48
+  To protect your rights, we need to make restrictions that forbid
49
+anyone to deny you these rights or to ask you to surrender the rights.
50
+These restrictions translate to certain responsibilities for you if you
51
+distribute copies of the software, or if you modify it.
52
+
53
+  For example, if you distribute copies of such a program, whether
54
+gratis or for a fee, you must give the recipients all the rights that
55
+you have.  You must make sure that they, too, receive or can get the
56
+source code.  And you must show them these terms so they know their
57
+rights.
58
+
59
+  We protect your rights with two steps: (1) copyright the software, and
60
+(2) offer you this license which gives you legal permission to copy,
61
+distribute and/or modify the software.
62
+
63
+  Also, for each author's protection and ours, we want to make certain
64
+that everyone understands that there is no warranty for this free
65
+software.  If the software is modified by someone else and passed on, we
66
+want its recipients to know that what they have is not the original, so
67
+that any problems introduced by others will not reflect on the original
68
+authors' reputations.
69
+
70
+  Finally, any free program is threatened constantly by software
71
+patents.  We wish to avoid the danger that redistributors of a free
72
+program will individually obtain patent licenses, in effect making the
73
+program proprietary.  To prevent this, we have made it clear that any
74
+patent must be licensed for everyone's free use or not licensed at all.
75
+
76
+  The precise terms and conditions for copying, distribution and
77
+modification follow.
78
+
79
+           GNU GENERAL PUBLIC LICENSE
80
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
81
+
82
+  0. This License applies to any program or other work which contains
83
+a notice placed by the copyright holder saying it may be distributed
84
+under the terms of this General Public License.  The "Program", below,
85
+refers to any such program or work, and a "work based on the Program"
86
+means either the Program or any derivative work under copyright law:
87
+that is to say, a work containing the Program or a portion of it,
88
+either verbatim or with modifications and/or translated into another
89
+language.  (Hereinafter, translation is included without limitation in
90
+the term "modification".)  Each licensee is addressed as "you".
91
+
92
+Activities other than copying, distribution and modification are not
93
+covered by this License; they are outside its scope.  The act of
94
+running the Program is not restricted, and the output from the Program
95
+is covered only if its contents constitute a work based on the
96
+Program (independent of having been made by running the Program).
97
+Whether that is true depends on what the Program does.
98
+
99
+  1. You may copy and distribute verbatim copies of the Program's
100
+source code as you receive it, in any medium, provided that you
101
+conspicuously and appropriately publish on each copy an appropriate
102
+copyright notice and disclaimer of warranty; keep intact all the
103
+notices that refer to this License and to the absence of any warranty;
104
+and give any other recipients of the Program a copy of this License
105
+along with the Program.
106
+
107
+You may charge a fee for the physical act of transferring a copy, and
108
+you may at your option offer warranty protection in exchange for a fee.
109
+
110
+  2. You may modify your copy or copies of the Program or any portion
111
+of it, thus forming a work based on the Program, and copy and
112
+distribute such modifications or work under the terms of Section 1
113
+above, provided that you also meet all of these conditions:
114
+
115
+    a) You must cause the modified files to carry prominent notices
116
+    stating that you changed the files and the date of any change.
117
+
118
+    b) You must cause any work that you distribute or publish, that in
119
+    whole or in part contains or is derived from the Program or any
120
+    part thereof, to be licensed as a whole at no charge to all third
121
+    parties under the terms of this License.
122
+
123
+    c) If the modified program normally reads commands interactively
124
+    when run, you must cause it, when started running for such
125
+    interactive use in the most ordinary way, to print or display an
126
+    announcement including an appropriate copyright notice and a
127
+    notice that there is no warranty (or else, saying that you provide
128
+    a warranty) and that users may redistribute the program under
129
+    these conditions, and telling the user how to view a copy of this
130
+    License.  (Exception: if the Program itself is interactive but
131
+    does not normally print such an announcement, your work based on
132
+    the Program is not required to print an announcement.)
133
+
134
+These requirements apply to the modified work as a whole.  If
135
+identifiable sections of that work are not derived from the Program,
136
+and can be reasonably considered independent and separate works in
137
+themselves, then this License, and its terms, do not apply to those
138
+sections when you distribute them as separate works.  But when you
139
+distribute the same sections as part of a whole which is a work based
140
+on the Program, the distribution of the whole must be on the terms of
141
+this License, whose permissions for other licensees extend to the
142
+entire whole, and thus to each and every part regardless of who wrote it.
143
+
144
+Thus, it is not the intent of this section to claim rights or contest
145
+your rights to work written entirely by you; rather, the intent is to
146
+exercise the right to control the distribution of derivative or
147
+collective works based on the Program.
148
+
149
+In addition, mere aggregation of another work not based on the Program
150
+with the Program (or with a work based on the Program) on a volume of
151
+a storage or distribution medium does not bring the other work under
152
+the scope of this License.
153
+
154
+  3. You may copy and distribute the Program (or a work based on it,
155
+under Section 2) in object code or executable form under the terms of
156
+Sections 1 and 2 above provided that you also do one of the following:
157
+
158
+    a) Accompany it with the complete corresponding machine-readable
159
+    source code, which must be distributed under the terms of Sections
160
+    1 and 2 above on a medium customarily used for software interchange; or,
161
+
162
+    b) Accompany it with a written offer, valid for at least three
163
+    years, to give any third party, for a charge no more than your
164
+    cost of physically performing source distribution, a complete
165
+    machine-readable copy of the corresponding source code, to be
166
+    distributed under the terms of Sections 1 and 2 above on a medium
167
+    customarily used for software interchange; or,
168
+
169
+    c) Accompany it with the information you received as to the offer
170
+    to distribute corresponding source code.  (This alternative is
171
+    allowed only for noncommercial distribution and only if you
172
+    received the program in object code or executable form with such
173
+    an offer, in accord with Subsection b above.)
174
+
175
+The source code for a work means the preferred form of the work for
176
+making modifications to it.  For an executable work, complete source
177
+code means all the source code for all modules it contains, plus any
178
+associated interface definition files, plus the scripts used to
179
+control compilation and installation of the executable.  However, as a
180
+special exception, the source code distributed need not include
181
+anything that is normally distributed (in either source or binary
182
+form) with the major components (compiler, kernel, and so on) of the
183
+operating system on which the executable runs, unless that component
184
+itself accompanies the executable.
185
+
186
+If distribution of executable or object code is made by offering
187
+access to copy from a designated place, then offering equivalent
188
+access to copy the source code from the same place counts as
189
+distribution of the source code, even though third parties are not
190
+compelled to copy the source along with the object code.
191
+
192
+  4. You may not copy, modify, sublicense, or distribute the Program
193
+except as expressly provided under this License.  Any attempt
194
+otherwise to copy, modify, sublicense or distribute the Program is
195
+void, and will automatically terminate your rights under this License.
196
+However, parties who have received copies, or rights, from you under
197
+this License will not have their licenses terminated so long as such
198
+parties remain in full compliance.
199
+
200
+  5. You are not required to accept this License, since you have not
201
makemkv-bin-1.9.5.tar.xz/src/share/aac-stereo.mmcp.xml -> makemkv-bin-1.10.2.tar.xz/src/share/aac-stereo.mmcp.xml Changed
25
 
1
@@ -196,6 +196,23 @@
2
                 audioMix="stereo16">
3
         </output>
4
     </trackSettings>
5
+    <trackSettings input="EAC3-core-stereo">
6
+        <output outputSettingsName="copy"
7
+                defaultSelection="$app_DefaultSelectionString,-sel:all">
8
+        </output>
9
+        <output outputSettingsName="aac"
10
+                defaultSelection="$app_DefaultSelectionString">
11
+        </output>
12
+    </trackSettings>
13
+    <trackSettings input="EAC3-core-multi">
14
+        <output outputSettingsName="copy"
15
+                defaultSelection="$app_DefaultSelectionString,-sel:all">
16
+        </output>
17
+        <output outputSettingsName="aac"
18
+                defaultSelection="$app_DefaultSelectionString"
19
+                audioMix="stereo16">
20
+        </output>
21
+    </trackSettings>
22
     <trackSettings input="EAC3-stereo">
23
         <output outputSettingsName="copy"
24
                 defaultSelection="$app_DefaultSelectionString,-sel:all">
25
makemkv-bin-1.10.2.tar.xz/src/share/blues.jar Added
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_chi.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_chi.mo.gz Changed
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_dan.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_dan.mo.gz Changed
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_deu.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_deu.mo.gz Changed
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_dut.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_dut.mo.gz Changed
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_fra.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_fra.mo.gz Changed
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_ita.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_ita.mo.gz Changed
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_jpn.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_jpn.mo.gz Changed
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_nor.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_nor.mo.gz Changed
makemkv-bin-1.10.2.tar.xz/src/share/makemkv_per.mo.gz Added
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_pol.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_pol.mo.gz Changed
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_ptb.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_ptb.mo.gz Changed
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_spa.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_spa.mo.gz Changed
makemkv-bin-1.9.5.tar.xz/src/share/makemkv_swe.mo.gz -> makemkv-bin-1.10.2.tar.xz/src/share/makemkv_swe.mo.gz Changed
makemkv-oss-1.9.5.tar.xz/License.txt -> makemkv-oss-1.10.2.tar.xz/License.txt Changed
7
 
1
@@ -1,4 +1,4 @@
2
-Copyright (C) 2007-2015 GuinpinSoft inc
3
+Copyright (C) 2007-2016 GuinpinSoft inc
4
 
5
 IMPORTANT NOTE
6
 
7
makemkv-oss-1.9.5.tar.xz/libabi/inc/lgpl/expatabi.h -> makemkv-oss-1.10.2.tar.xz/libabi/inc/lgpl/expatabi.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/inc/lgpl/httpabi.h -> makemkv-oss-1.10.2.tar.xz/libabi/inc/lgpl/httpabi.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/inc/lgpl/libmabi.h -> makemkv-oss-1.10.2.tar.xz/libabi/inc/lgpl/libmabi.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/inc/lgpl/osslabi.h -> makemkv-oss-1.10.2.tar.xz/libabi/inc/lgpl/osslabi.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/inc/lgpl/sysabi.h -> makemkv-oss-1.10.2.tar.xz/libabi/inc/lgpl/sysabi.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/inc/lgpl/zlibabi.h -> makemkv-oss-1.10.2.tar.xz/libabi/inc/lgpl/zlibabi.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/src/httplinux.cpp -> makemkv-oss-1.10.2.tar.xz/libabi/src/httplinux.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/src/httpmac.cpp -> makemkv-oss-1.10.2.tar.xz/libabi/src/httpmac.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/src/httpwin.cpp -> makemkv-oss-1.10.2.tar.xz/libabi/src/httpwin.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/src/libm.c -> makemkv-oss-1.10.2.tar.xz/libabi/src/libm.c Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/src/ossl_aes.c -> makemkv-oss-1.10.2.tar.xz/libabi/src/ossl_aes.c Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/src/ossl_ec.c -> makemkv-oss-1.10.2.tar.xz/libabi/src/ossl_ec.c Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/src/ossl_sha.c -> makemkv-oss-1.10.2.tar.xz/libabi/src/ossl_sha.c Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/src/sys_linux.c -> makemkv-oss-1.10.2.tar.xz/libabi/src/sys_linux.c Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/src/xpat.c -> makemkv-oss-1.10.2.tar.xz/libabi/src/xpat.c Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libabi/src/zlib.c -> makemkv-oss-1.10.2.tar.xz/libabi/src/zlib.c Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/inc/driveio/driveio.h -> makemkv-oss-1.10.2.tar.xz/libdriveio/inc/driveio/driveio.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/inc/driveio/scsicmd.h -> makemkv-oss-1.10.2.tar.xz/libdriveio/inc/driveio/scsicmd.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/inc/lgpl/tcpip.h -> makemkv-oss-1.10.2.tar.xz/libdriveio/inc/lgpl/tcpip.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/src/drives/drive.h -> makemkv-oss-1.10.2.tar.xz/libdriveio/src/drives/drive.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/src/drives/pioneer.cpp -> makemkv-oss-1.10.2.tar.xz/libdriveio/src/drives/pioneer.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/src/drives/xboxhddvd.cpp -> makemkv-oss-1.10.2.tar.xz/libdriveio/src/drives/xboxhddvd.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/src/infolist.cpp -> makemkv-oss-1.10.2.tar.xz/libdriveio/src/infolist.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/src/scsihlp.cpp -> makemkv-oss-1.10.2.tar.xz/libdriveio/src/scsihlp.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/src/scsihlp.h -> makemkv-oss-1.10.2.tar.xz/libdriveio/src/scsihlp.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/src/stdquery.cpp -> makemkv-oss-1.10.2.tar.xz/libdriveio/src/stdquery.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/src/tipclient.cpp -> makemkv-oss-1.10.2.tar.xz/libdriveio/src/tipclient.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/src/tipcommon.cpp -> makemkv-oss-1.10.2.tar.xz/libdriveio/src/tipcommon.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/src/tipcommon.h -> makemkv-oss-1.10.2.tar.xz/libdriveio/src/tipcommon.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libdriveio/src/tipserver.cpp -> makemkv-oss-1.10.2.tar.xz/libdriveio/src/tipserver.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libDriveIo - MMC drive interrogation library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libdriveio@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libdriveio@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/Debug.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/Debug.h Changed
184
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,10 +29,10 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: Debug.h 639 2004-07-09 20:59:14Z mosu $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Moritz Bunkus <moritz @ bunkus.org>
31
+  \file
32
+  \version \$Id: Debug.h 639 2004-07-09 20:59:14Z mosu $
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Moritz Bunkus <moritz @ bunkus.org>
35
 */
36
 #ifndef LIBEBML_DEBUG_H
37
 #define LIBEBML_DEBUG_H
38
@@ -55,50 +55,50 @@
39
 #if defined(LIBEBML_DEBUG_TRACE)
40
 // define the working debugging class
41
 
42
-class EBML_DLL_API ADbg  
43
+class EBML_DLL_API ADbg
44
 {
45
 public:
46
-   ADbg(int level = 0);
47
-   virtual ~ADbg();
48
+  ADbg(int level = 0);
49
+  virtual ~ADbg();
50
 
51
-   /// \todo make an inline function to test the level first and the process
52
-   int OutPut(int level, const char * format,...) const;
53
+  /// \todo make an inline function to test the level first and the process
54
+  int OutPut(int level, const char * format,...) const;
55
 
56
-   int OutPut(const char * format,...) const;
57
+  int OutPut(const char * format,...) const;
58
 
59
-   inline int setLevel(const int level) {
60
-       return my_level = level;
61
-   }
62
+  inline int setLevel(const int level) {
63
+    return my_level = level;
64
+  }
65
 
66
-   inline bool setIncludeTime(const bool included = true) {
67
-       return my_time_included = included;
68
-   }
69
+  inline bool setIncludeTime(const bool included = true) {
70
+    return my_time_included = included;
71
+  }
72
 
73
-   bool setDebugFile(const char * NewFilename);
74
-   bool unsetDebugFile();
75
+  bool setDebugFile(const char * NewFilename);
76
+  bool unsetDebugFile();
77
 
78
-   inline bool setUseFile(const bool usefile = true) {
79
-       return my_use_file = usefile;
80
-   }
81
+  inline bool setUseFile(const bool usefile = true) {
82
+    return my_use_file = usefile;
83
+  }
84
 
85
-   inline const char * setPrefix(const char * string) {
86
-       return strncpy(prefix, string, MAX_PREFIX_LENGTH);
87
-   }
88
+  inline const char * setPrefix(const char * string) {
89
+    return strncpy(prefix, string, MAX_PREFIX_LENGTH);
90
+  }
91
 
92
 private:
93
-   int my_level;
94
-   bool my_time_included;
95
-   bool my_use_file;
96
-   bool my_debug_output;
97
+  int my_level;
98
+  bool my_time_included;
99
+  bool my_use_file;
100
+  bool my_debug_output;
101
 
102
-   int _OutPut(const char * format,va_list params) const;
103
+  int _OutPut(const char * format,va_list params) const;
104
 
105
-   char prefix[MAX_PREFIX_LENGTH];
106
+  char prefix[MAX_PREFIX_LENGTH];
107
 
108
 #ifdef WIN32
109
-   HANDLE hFile;
110
+  HANDLE hFile;
111
 #else
112
-   FILE *hFile;
113
+  FILE *hFile;
114
 #endif // WIN32
115
 };
116
 
117
@@ -109,40 +109,40 @@
118
 class EBML_DLL_API ADbg
119
 {
120
 public:
121
-   ADbg(int /* level */ = 0){}
122
-   virtual ~ADbg() {}
123
+  ADbg(int /* level */ = 0){}
124
+  virtual ~ADbg() {}
125
 
126
-   inline int OutPut(int /* level */, const char * /* format */,...) const {
127
-       return 0;
128
-   }
129
+  inline int OutPut(int /* level */, const char * /* format */,...) const {
130
+    return 0;
131
+  }
132
 
133
-   inline int OutPut(const char * /* format */,...) const {
134
-       return 0;
135
-   }
136
+  inline int OutPut(const char * /* format */,...) const {
137
+    return 0;
138
+  }
139
 
140
-   inline int setLevel(const int level) {
141
-       return level;
142
-   }
143
+  inline int setLevel(const int level) {
144
+    return level;
145
+  }
146
 
147
-   inline bool setIncludeTime(const bool /* included */ = true) {
148
-       return true;
149
-   }
150
+  inline bool setIncludeTime(const bool /* included */ = true) {
151
+    return true;
152
+  }
153
 
154
-   inline bool setDebugFile(const char * /* NewFilename */) {
155
-       return true;
156
-   }
157
+  inline bool setDebugFile(const char * /* NewFilename */) {
158
+    return true;
159
+  }
160
 
161
-   inline bool unsetDebugFile() {
162
-       return true;
163
-   }
164
+  inline bool unsetDebugFile() {
165
+    return true;
166
+  }
167
 
168
-   inline bool setUseFile(const bool /* usefile */ = true) {
169
-       return true;
170
-   }
171
+  inline bool setUseFile(const bool /* usefile */ = true) {
172
+    return true;
173
+  }
174
 
175
-   inline const char * setPrefix(const char * string) {
176
-       return string;
177
-   }
178
+  inline const char * setPrefix(const char * string) {
179
+    return string;
180
+  }
181
 };
182
 
183
 #endif // defined(LIBEBML_DEBUG_TRACE)
184
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlBinary.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlBinary.h Changed
129
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,10 +29,10 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Julien Coloos   <suiryc @ users.sf.net>
31
+  \file
32
+  \version \$Id$
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Julien Coloos  <suiryc @ users.sf.net>
35
 */
36
 #ifndef LIBEBML_BINARY_H
37
 #define LIBEBML_BINARY_H
38
@@ -54,51 +54,51 @@
39
     \class EbmlBinary
40
     \brief Handle all operations on an EBML element that contains "unknown" binary data
41
 
42
-   \todo handle fix sized elements (like UID of CodecID)
43
+  \todo handle fix sized elements (like UID of CodecID)
44
 */
45
 class EBML_DLL_API EbmlBinary : public EbmlElement {
46
-   public:
47
-       EbmlBinary();
48
-       EbmlBinary(const EbmlBinary & ElementToClone);
49
-       virtual ~EbmlBinary(void);
50
-   
51
-       virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() < 0x7FFFFFFF;} // we don't mind about what's inside
52
-
53
-       filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
54
-       filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
55
-       filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
56
-   
57
-       void SetBuffer(const binary *Buffer, const uint32 BufferSize) {
58
-           Data = (binary *) Buffer;
59
-           SetSize_(BufferSize);
60
-           SetValueIsSet();
61
-       }
62
-
63
-       binary *GetBuffer() const {return Data;}
64
-       
65
-       void CopyBuffer(const binary *Buffer, size_t BufferSize) {
66
-           if (Data != NULL)
67
-               free(Data);
68
-           Data = (binary *)malloc(BufferSize * sizeof(binary));
69
-           memcpy(Data, Buffer, BufferSize);
70
-           SetSize_(BufferSize);
71
-           SetValueIsSet();
72
-       }
73
-       
74
-       operator const binary &() const;
75
-   
76
-       bool IsDefaultValue() const {
77
-           return false;
78
-       }
79
-
80
-       bool operator==(const EbmlBinary & ElementToCompare) const;
81
+  public:
82
+    EbmlBinary();
83
+    EbmlBinary(const EbmlBinary & ElementToClone);
84
+    virtual ~EbmlBinary(void);
85
+
86
+    virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() < 0x7FFFFFFF;} // we don't mind about what's inside
87
+
88
+    filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
89
+    filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
90
+    filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
91
+
92
+    void SetBuffer(const binary *Buffer, const uint32 BufferSize) {
93
+      Data = (binary *) Buffer;
94
+      SetSize_(BufferSize);
95
+      SetValueIsSet();
96
+    }
97
+
98
+    binary *GetBuffer() const {return Data;}
99
+
100
+    void CopyBuffer(const binary *Buffer, const uint32 BufferSize) {
101
+      if (Data != NULL)
102
+        free(Data);
103
+      Data = (binary *)malloc(BufferSize * sizeof(binary));
104
+      memcpy(Data, Buffer, BufferSize);
105
+      SetSize_(BufferSize);
106
+      SetValueIsSet();
107
+    }
108
+
109
+    operator const binary &() const;
110
+
111
+    bool IsDefaultValue() const {
112
+      return false;
113
+    }
114
+
115
+    bool operator==(const EbmlBinary & ElementToCompare) const;
116
 
117
 #if defined(EBML_STRICT_API)
118
-   private:
119
+  private:
120
 #else
121
-   protected:
122
+  protected:
123
 #endif
124
-       binary *Data; // the binary data inside the element
125
+    binary *Data; // the binary data inside the element
126
 };
127
 
128
 END_LIBEBML_NAMESPACE
129
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlConfig.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlConfig.h Changed
61
 
1
@@ -9,17 +9,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -27,15 +27,19 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlConfig.h 1241 2006-01-25 00:59:45Z robux4 $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Moritz Bunkus <moritz @ bunkus.org>
31
+  \file
32
+  \version \$Id: EbmlConfig.h 1241 2006-01-25 00:59:45Z robux4 $
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Moritz Bunkus <moritz @ bunkus.org>
35
 */
36
 
37
 #ifndef LIBEBML_CONFIG_H
38
 #define LIBEBML_CONFIG_H
39
 
40
+#ifdef HAVE_CONFIG_H
41
+#include "config.h"
42
+#endif
43
+
44
 #if defined(__linux__)
45
 #include <endian.h>
46
 #if __BYTE_ORDER == __LITTLE_ENDIAN
47
@@ -100,6 +104,13 @@
48
 #define LIBEBML_DEBUG
49
 #endif
50
 
51
+#ifdef HAVE_WINAPIFAMILY_H
52
+# include <winapifamily.h>
53
+# if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
54
+#  undef LIBEBML_DEBUG
55
+# endif
56
+#endif
57
+
58
 // For compilers that don't define __TIMESTAMP__ (e.g. gcc 2.95, gcc 3.2)
59
 #ifndef __TIMESTAMP__
60
 #define __TIMESTAMP__ __DATE__ " " __TIME__
61
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlContexts.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlContexts.h Changed
49
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlContexts.h 736 2004-08-28 14:05:09Z robux4 $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id: EbmlContexts.h 736 2004-08-28 14:05:09Z robux4 $
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #ifndef LIBEBML_CONTEXTS_H
35
 #define LIBEBML_CONTEXTS_H
36
@@ -51,10 +51,10 @@
37
 extern const EbmlSemanticContext EBML_DLL_API EDocTypeReadVersion_Context;
38
 
39
 #define Context_EbmlHead EbmlHead_Context
40
-   
41
+
42
 // global elements
43
 extern const EbmlSemanticContext EBML_DLL_API & GetEbmlGlobal_Context();
44
-   
45
+
46
 END_LIBEBML_NAMESPACE
47
 
48
 #endif // LIBEBML_CONTEXTS_H
49
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlCrc32.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlCrc32.h Changed
187
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,10 +29,10 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Jory Stone       <jcsston @ toughguy.net>
31
+  \file
32
+  \version \$Id$
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Jory Stone       <jcsston @ toughguy.net>
35
 */
36
 #ifndef LIBEBML_CRC32_H
37
 #define LIBEBML_CRC32_H
38
@@ -45,58 +45,58 @@
39
 START_LIBEBML_NAMESPACE
40
 
41
 DECLARE_EBML_BINARY(EbmlCrc32)
42
-   public:
43
-       EbmlCrc32(const EbmlCrc32 & ElementToClone);
44
-       virtual bool ValidateSize() const {return IsFiniteSize() && (GetSize() == 4);}
45
-       filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
46
-       filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
47
-//     filepos_t UpdateSize(bool bWithDefault = false);
48
-       
49
-       bool IsDefaultValue() const {
50
-           return false;
51
-       }
52
-
53
-       void AddElementCRC32(EbmlElement &ElementToCRC);
54
-       bool CheckElementCRC32(EbmlElement &ElementToCRC);
55
-       
56
-       /*!
57
-           Use this to quickly check a CRC32 with some data
58
-           \return True if inputCRC matches CRC32 generated from input data
59
-       */
60
-       static bool CheckCRC(uint32 inputCRC, const binary *input, uint32 length);
61
-       /*!
62
-           Calls Update() and Finalize(), use to create a CRC32 in one go
63
-       */
64
-       void FillCRC32(const binary *input, uint32 length);
65
-       /*!
66
-           Add data to the CRC table, in other words process some data bit by bit
67
-       */
68
-       void Update(const binary *input, uint32 length);
69
-       /*!
70
-           Use this with Update() to Finalize() or Complete the CRC32
71
-       */
72
-       void Finalize();
73
-       /*!
74
-           Returns a uint32 that has the value of the CRC32
75
-       */
76
-       uint32 GetCrc32() const {
77
-           return m_crc_final;
78
-       };
79
-   
80
-       void ForceCrc32(uint32 NewValue) { m_crc_final = NewValue; SetValueIsSet();}
81
+  public:
82
+    EbmlCrc32(const EbmlCrc32 & ElementToClone);
83
+    virtual bool ValidateSize() const {return IsFiniteSize() && (GetSize() == 4);}
84
+    filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
85
+    filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
86
+//    filepos_t UpdateSize(bool bWithDefault = false);
87
+
88
+    bool IsDefaultValue() const {
89
+      return false;
90
+    }
91
+
92
+    void AddElementCRC32(EbmlElement &ElementToCRC);
93
+    bool CheckElementCRC32(EbmlElement &ElementToCRC);
94
+
95
+    /*!
96
+      Use this to quickly check a CRC32 with some data
97
+      \return True if inputCRC matches CRC32 generated from input data
98
+    */
99
+    static bool CheckCRC(uint32 inputCRC, const binary *input, uint32 length);
100
+    /*!
101
+      Calls Update() and Finalize(), use to create a CRC32 in one go
102
+    */
103
+    void FillCRC32(const binary *input, uint32 length);
104
+    /*!
105
+      Add data to the CRC table, in other words process some data bit by bit
106
+    */
107
+    void Update(const binary *input, uint32 length);
108
+    /*!
109
+      Use this with Update() to Finalize() or Complete the CRC32
110
+    */
111
+    void Finalize();
112
+    /*!
113
+      Returns a uint32 that has the value of the CRC32
114
+    */
115
+    uint32 GetCrc32() const {
116
+      return m_crc_final;
117
+    };
118
+
119
+    void ForceCrc32(uint32 NewValue) { m_crc_final = NewValue; SetValueIsSet();}
120
 
121
 #if defined(EBML_STRICT_API)
122
     private:
123
 #else
124
     protected:
125
 #endif
126
-       void ResetCRC();
127
-       void UpdateByte(binary b);
128
+    void ResetCRC();
129
+    void UpdateByte(binary b);
130
+
131
+    static const uint32 m_tab[256];
132
+    uint32 m_crc;
133
+    uint32 m_crc_final;
134
 
135
-       static const uint32 m_tab[256];
136
-       uint32 m_crc;
137
-       uint32 m_crc_final;
138
-        
139
         EBML_CONCRETE_CLASS(EbmlCrc32)
140
 };
141
 
142
@@ -104,36 +104,36 @@
143
 inline unsigned int GetAlignment(T * /* dummy */=NULL) // VC60 workaround
144
 {
145
 #if defined(_MSC_VER) && (_MSC_VER >= 1300)
146
-   return __alignof(T);
147
+  return __alignof(T);
148
 #elif defined(__GNUC__)
149
-   return __alignof__(T);
150
+  return __alignof__(T);
151
 #else
152
-   return sizeof(T);
153
+  return sizeof(T);
154
 #endif
155
 }
156
 
157
 template <class T>
158
 inline bool IsPowerOf2(T n)
159
 {
160
-   return n > 0 && (n & (n-1)) == 0;
161
+  return n > 0 && (n & (n-1)) == 0;
162
 }
163
 
164
 template <class T1, class T2>
165
 inline T2 ModPowerOf2(T1 a, T2 b)
166
 {
167
-   assert(IsPowerOf2(b));
168
-   return T2(a) & (b-1);
169
+  assert(IsPowerOf2(b));
170
+  return T2(a) & (b-1);
171
 }
172
 
173
 inline bool IsAlignedOn(const void *p, unsigned int alignment)
174
 {
175
-   return IsPowerOf2(alignment) ? ModPowerOf2((unsigned long)(uintptr_t)p, alignment) == 0 : (unsigned long)(uintptr_t)p % alignment == 0;
176
+  return IsPowerOf2(alignment) ? ModPowerOf2((unsigned long)(uintptr_t)p, alignment) == 0 : (unsigned long)(uintptr_t)p % alignment == 0;
177
 }
178
 
179
 template <class T>
180
 inline bool IsAligned(const void *p, T * /* dummy */=NULL) // VC60 workaround
181
 {
182
-   return IsAlignedOn(p, GetAlignment<T>());
183
+  return IsAlignedOn(p, GetAlignment<T>());
184
 }
185
 
186
 END_LIBEBML_NAMESPACE
187
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlDate.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlDate.h Changed
115
 
1
@@ -17,9 +17,9 @@
2
 **
3
 ** You should have received a copy of the GNU Lesser General Public
4
 ** License along with this library; if not, write to the Free Software
5
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
6
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
7
 **
8
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
9
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
10
 **
11
 ** Contact license@matroska.org if any conditions of this licensing are
12
 ** not clear to you.
13
@@ -27,9 +27,9 @@
14
 **********************************************************************/
15
 
16
 /*!
17
-   \file
18
-   \version \$Id$
19
-   \author Steve Lhomme     <robux4 @ users.sf.net>
20
+  \file
21
+  \version \$Id$
22
+  \author Steve Lhomme     <robux4 @ users.sf.net>
23
 */
24
 #ifndef LIBEBML_DATE_H
25
 #define LIBEBML_DATE_H
26
@@ -44,55 +44,55 @@
27
     \brief Handle all operations related to an EBML date
28
 */
29
 class EBML_DLL_API EbmlDate : public EbmlElement {
30
-   public:
31
-       EbmlDate() :EbmlElement(8, false), myDate(0) {}
32
-       EbmlDate(const EbmlDate & ElementToClone);
33
-
34
-       /*!
35
-           \brief set the date with a UNIX/C/EPOCH form
36
-           \param NewDate UNIX/C date in UTC (no timezone)
37
-       */
38
-       void SetEpochDate(int64 NewDate) {myDate = (NewDate - UnixEpochDelay) * 1000000000; SetValueIsSet();}
39
+  public:
40
+    EbmlDate() :EbmlElement(8, false), myDate(0) {}
41
+    EbmlDate(const EbmlDate & ElementToClone);
42
+
43
+    /*!
44
+      \brief set the date with a UNIX/C/EPOCH form
45
+      \param NewDate UNIX/C date in UTC (no timezone)
46
+    */
47
+    void SetEpochDate(int64 NewDate) {myDate = (NewDate - UnixEpochDelay) * 1000000000; SetValueIsSet();}
48
     EbmlDate &SetValue(int64 NewValue) {SetEpochDate(NewValue); return *this;}
49
 
50
-       /*!
51
-           \brief get the date with a UNIX/C/EPOCH form
52
-           \note the date is in UTC (no timezone)
53
-       */
54
-       int64 GetEpochDate() const {return int64(myDate/1000000000 + UnixEpochDelay);}
55
+    /*!
56
+      \brief get the date with a UNIX/C/EPOCH form
57
+      \note the date is in UTC (no timezone)
58
+    */
59
+    int64 GetEpochDate() const {return int64(myDate/1000000000 + UnixEpochDelay);}
60
     int64 GetValue() const {return GetEpochDate();}
61
 
62
-       virtual bool ValidateSize() const {return IsFiniteSize() && ((GetSize() == 8) || (GetSize() == 0));}
63
+    virtual bool ValidateSize() const {return IsFiniteSize() && ((GetSize() == 8) || (GetSize() == 0));}
64
 
65
-       /*!
66
-           \note no Default date handled
67
-       */
68
-       filepos_t UpdateSize(bool /* bWithDefault = false */, bool /* bForceRender = false */) {
69
-           if(!ValueIsSet())
70
-               SetSize_(0);
71
-           else
72
-               SetSize_(8);
73
-           return GetSize();
74
-       }
75
+    /*!
76
+      \note no Default date handled
77
+    */
78
+    filepos_t UpdateSize(bool /* bWithDefault = false */, bool /* bForceRender = false */) {
79
+      if(!ValueIsSet())
80
+        SetSize_(0);
81
+      else
82
+        SetSize_(8);
83
+      return GetSize();
84
+    }
85
 
86
-       virtual bool IsSmallerThan(const EbmlElement *Cmp) const;
87
+    virtual bool IsSmallerThan(const EbmlElement *Cmp) const;
88
 
89
-       filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
90
+    filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
91
 
92
-       bool IsDefaultValue() const {
93
-           return false;
94
-       }
95
+    bool IsDefaultValue() const {
96
+      return false;
97
+    }
98
 
99
 #if defined(EBML_STRICT_API)
100
     private:
101
 #else
102
     protected:
103
 #endif
104
-       filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
105
+    filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
106
 
107
-       int64 myDate; ///< internal format of the date
108
+    int64 myDate; ///< internal format of the date
109
 
110
-       static const uint64 UnixEpochDelay;
111
+    static const uint64 UnixEpochDelay;
112
 };
113
 
114
 END_LIBEBML_NAMESPACE
115
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlDummy.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlDummy.h Changed
67
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id$
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #ifndef LIBEBML_DUMMY_H
35
 #define LIBEBML_DUMMY_H
36
@@ -41,13 +41,13 @@
37
 START_LIBEBML_NAMESPACE
38
 
39
 class EBML_DLL_API EbmlDummy : public EbmlBinary {
40
-   public:
41
-       EbmlDummy() :DummyId(DummyRawId) {}
42
-       EbmlDummy(const EbmlId & aId) :EbmlBinary(), DummyId(aId) {}
43
-       EbmlDummy(const EbmlDummy & ElementToClone):EbmlBinary(ElementToClone), DummyId(ElementToClone.DummyId) {}
44
+  public:
45
+    EbmlDummy() :DummyId(DummyRawId) {}
46
+    EbmlDummy(const EbmlId & aId) :EbmlBinary(), DummyId(aId) {}
47
+    EbmlDummy(const EbmlDummy & ElementToClone):EbmlBinary(ElementToClone), DummyId(ElementToClone.DummyId) {}
48
 
49
-       bool IsDummy() const {return true;}
50
-       bool IsDefaultValue() const {return true;}
51
+    bool IsDummy() const {return true;}
52
+    bool IsDefaultValue() const {return true;}
53
 
54
         virtual operator const EbmlId &() const {
55
             return DummyId;
56
@@ -58,8 +58,8 @@
57
 #else
58
     protected:
59
 #endif
60
-       const EbmlId DummyId;
61
-       static const EbmlId DummyRawId;
62
+    const EbmlId DummyId;
63
+    static const EbmlId DummyRawId;
64
 
65
         EBML_CONCRETE_DUMMY_CLASS(EbmlDummy)
66
 };
67
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlElement.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlElement.h Changed
201
 
1
@@ -17,9 +17,9 @@
2
 **
3
 ** You should have received a copy of the GNU Lesser General Public
4
 ** License along with this library; if not, write to the Free Software
5
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
6
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
7
 **
8
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
9
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
10
 **
11
 ** Contact license@matroska.org if any conditions of this licensing are
12
 ** not clear to you.
13
@@ -27,9 +27,9 @@
14
 **********************************************************************/
15
 
16
 /*!
17
-   \file
18
-   \version \$Id$
19
-   \author Steve Lhomme     <robux4 @ users.sf.net>
20
+  \file
21
+  \version \$Id$
22
+  \author Steve Lhomme     <robux4 @ users.sf.net>
23
 */
24
 #ifndef LIBEBML_ELEMENT_H
25
 #define LIBEBML_ELEMENT_H
26
@@ -41,36 +41,36 @@
27
 START_LIBEBML_NAMESPACE
28
 
29
 /*!
30
-   \brief The size of the EBML-coded length
31
+  \brief The size of the EBML-coded length
32
 */
33
 int EBML_DLL_API CodedSizeLength(uint64 Length, unsigned int SizeLength, bool bSizeIsFinite = true);
34
 
35
 /*!
36
-   \brief The coded value of the EBML-coded length
37
-   \note The size of OutBuffer must be 8 octets at least
38
+  \brief The coded value of the EBML-coded length
39
+  \note The size of OutBuffer must be 8 octets at least
40
 */
41
 int EBML_DLL_API CodedValueLength(uint64 Length, int CodedSize, binary * OutBuffer);
42
 
43
 /*!
44
-   \brief Read an EBML-coded value from a buffer
45
-   \return the value read
46
+  \brief Read an EBML-coded value from a buffer
47
+  \return the value read
48
 */
49
 uint64 EBML_DLL_API ReadCodedSizeValue(const binary * InBuffer, uint32 & BufferSize, uint64 & SizeUnknown);
50
 
51
 /*!
52
-   \brief The size of the EBML-coded signed length
53
+  \brief The size of the EBML-coded signed length
54
 */
55
 int EBML_DLL_API CodedSizeLengthSigned(int64 Length, unsigned int SizeLength);
56
 
57
 /*!
58
-   \brief The coded value of the EBML-coded signed length
59
-   \note the size of OutBuffer must be 8 octets at least
60
+  \brief The coded value of the EBML-coded signed length
61
+  \note the size of OutBuffer must be 8 octets at least
62
 */
63
 int EBML_DLL_API CodedValueLengthSigned(int64 Length, int CodedSize, binary * OutBuffer);
64
 
65
 /*!
66
-   \brief Read a signed EBML-coded value from a buffer
67
-   \return the value read
68
+  \brief Read a signed EBML-coded value from a buffer
69
+  \return the value read
70
 */
71
 int64 EBML_DLL_API ReadCodedSizeSignedValue(const binary * InBuffer, uint32 & BufferSize, uint64 & SizeUnknown);
72
 
73
@@ -176,25 +176,25 @@
74
     public: \
75
         virtual const EbmlSemanticContext &Context() const {return ClassInfos.GetContext();} \
76
         virtual const char *DebugName() const {return ClassInfos.GetName();} \
77
-       virtual operator const EbmlId &() const {return ClassInfos.ClassId();} \
78
+    virtual operator const EbmlId &() const {return ClassInfos.ClassId();} \
79
         virtual EbmlElement & CreateElement() const {return Create();} \
80
         virtual EbmlElement * Clone() const { return new Type(*this); } \
81
-       static EbmlElement & Create() {return *(new Type);} \
82
+    static EbmlElement & Create() {return *(new Type);} \
83
         static const EbmlCallbacks & ClassInfo() {return ClassInfos;} \
84
         static const EbmlId & ClassId() {return ClassInfos.ClassId();} \
85
     private: \
86
-       static const EbmlCallbacks ClassInfos; \
87
+    static const EbmlCallbacks ClassInfos; \
88
 
89
 #define EBML_CONCRETE_DUMMY_CLASS(Type) \
90
     public: \
91
         virtual const EbmlSemanticContext &Context() const {return *static_cast<EbmlSemanticContext*>(NULL);} \
92
         virtual const char *DebugName() const {return "DummyElement";} \
93
-       virtual operator const EbmlId &(); \
94
+    virtual operator const EbmlId &(); \
95
         virtual EbmlElement & CreateElement() const {return Create();} \
96
         virtual EbmlElement * Clone() const { return new Type(*this); } \
97
-       static EbmlElement & Create() {return *(new Type);} \
98
+    static EbmlElement & Create() {return *(new Type);} \
99
         static const EbmlId & ClassId(); \
100
-       static const EbmlCallbacks ClassInfos; \
101
+    static const EbmlCallbacks ClassInfos; \
102
 
103
 
104
 #define EBML_INFO(ref)             ref::ClassInfo()
105
@@ -223,21 +223,21 @@
106
 #else
107
 #define EBML_CONCRETE_CLASS(Type) \
108
     public: \
109
-       virtual const EbmlCallbacks & Generic() const {return ClassInfos;} \
110
-       virtual operator const EbmlId &() const {return ClassInfos.GlobalId;} \
111
+    virtual const EbmlCallbacks & Generic() const {return ClassInfos;} \
112
+    virtual operator const EbmlId &() const {return ClassInfos.GlobalId;} \
113
         virtual EbmlElement & CreateElement() const {return Create();} \
114
         virtual EbmlElement * Clone() const { return new Type(*this); } \
115
-       static EbmlElement & Create() {return *(new Type);} \
116
-       static const EbmlCallbacks ClassInfos; \
117
+    static EbmlElement & Create() {return *(new Type);} \
118
+    static const EbmlCallbacks ClassInfos; \
119
 
120
 #define EBML_CONCRETE_DUMMY_CLASS(Type) \
121
     public: \
122
-       virtual const EbmlCallbacks & Generic() const {return ClassInfos;} \
123
-       virtual operator const EbmlId &(); \
124
+    virtual const EbmlCallbacks & Generic() const {return ClassInfos;} \
125
+    virtual operator const EbmlId &(); \
126
         virtual EbmlElement & CreateElement() const {return Create();} \
127
         virtual EbmlElement * Clone() const { return new Type(*this); } \
128
-       static EbmlElement & Create() {return *(new Type);} \
129
-       static const EbmlCallbacks ClassInfos; \
130
+    static EbmlElement & Create() {return *(new Type);} \
131
+    static const EbmlCallbacks ClassInfos; \
132
 
133
 
134
 #define EBML_INFO(ref)             ref::ClassInfos
135
@@ -282,11 +282,11 @@
136
 
137
 // functions for generic handling of data (should be static to all classes)
138
 /*!
139
-   \todo Handle default value
140
+  \todo Handle default value
141
 */
142
 class EBML_DLL_API EbmlCallbacks {
143
-   public:
144
-       EbmlCallbacks(EbmlElement & (*Creator)(), const EbmlId & aGlobalId, const char * aDebugName, const EbmlSemanticContext & aContext);
145
+  public:
146
+    EbmlCallbacks(EbmlElement & (*Creator)(), const EbmlId & aGlobalId, const char * aDebugName, const EbmlSemanticContext & aContext);
147
 
148
         inline const EbmlId & ClassId() const { return GlobalId; }
149
         inline const EbmlSemanticContext & GetContext() const { return Context; }
150
@@ -296,20 +296,20 @@
151
 #if defined(EBML_STRICT_API)
152
     private:
153
 #endif
154
-       EbmlElement & (*Create)();
155
-       const EbmlId & GlobalId;
156
-       const char * DebugName;
157
-       const EbmlSemanticContext & Context;
158
+    EbmlElement & (*Create)();
159
+    const EbmlId & GlobalId;
160
+    const char * DebugName;
161
+    const EbmlSemanticContext & Context;
162
 };
163
 
164
 /*!
165
-   \brief contains the semantic informations for a given level and all sublevels
166
-   \todo move the ID in the element class
167
+  \brief contains the semantic informations for a given level and all sublevels
168
+  \todo move the ID in the element class
169
 */
170
 class EBML_DLL_API EbmlSemantic {
171
-   public:
172
-       EbmlSemantic(bool aMandatory, bool aUnique, const EbmlCallbacks & aGetCallbacks)
173
-           :Mandatory(aMandatory), Unique(aUnique), GetCallbacks(aGetCallbacks) {}
174
+  public:
175
+    EbmlSemantic(bool aMandatory, bool aUnique, const EbmlCallbacks & aGetCallbacks)
176
+      :Mandatory(aMandatory), Unique(aUnique), GetCallbacks(aGetCallbacks) {}
177
 
178
         inline bool IsMandatory() const { return Mandatory; }
179
         inline bool IsUnique() const { return Unique; }
180
@@ -319,176 +319,176 @@
181
 #if defined(EBML_STRICT_API)
182
     private:
183
 #endif
184
-       bool Mandatory; ///< wether the element is mandatory in the context or not
185
-       bool Unique;
186
-       const EbmlCallbacks & GetCallbacks;
187
+    bool Mandatory; ///< wether the element is mandatory in the context or not
188
+    bool Unique;
189
+    const EbmlCallbacks & GetCallbacks;
190
 };
191
 
192
 typedef const class EbmlSemanticContext & (*_GetSemanticContext)();
193
 
194
 /*!
195
-   Context of the element
196
-   \todo allow more than one parent ?
197
+  Context of the element
198
+  \todo allow more than one parent ?
199
 */
200
 class EBML_DLL_API EbmlSemanticContext {
201
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlEndian.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlEndian.h Changed
126
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -58,63 +58,63 @@
24
 template<class TYPE, endianess ENDIAN> class Endian
25
 {
26
     public:
27
-       Endian() {}
28
+      Endian() {}
29
 
30
-       Endian(const TYPE value)
31
-       {
32
-           memcpy(&platform_value, &value, sizeof(TYPE));
33
-           process_endian();
34
-       }
35
+      Endian(const TYPE value)
36
+      {
37
+        memcpy(&platform_value, &value, sizeof(TYPE));
38
+        process_endian();
39
+      }
40
 
41
-       inline Endian & Eval(const binary *endian_buffer)
42
-       {
43
-           //endian_value = *(TYPE *)(endian_buffer);
44
-           memcpy(&endian_value, endian_buffer, sizeof(TYPE)); // Some (all?) RISC processors do not allow reading objects bigger than 1 byte from non-aligned addresses, and endian_buffer may point to a non-aligned address.
45
-           process_platform();
46
-           return *this;
47
-       }
48
+      inline Endian & Eval(const binary *endian_buffer)
49
+      {
50
+          //endian_value = *(TYPE *)(endian_buffer);
51
+          memcpy(&endian_value, endian_buffer, sizeof(TYPE));  // Some (all?) RISC processors do not allow reading objects bigger than 1 byte from non-aligned addresses, and endian_buffer may point to a non-aligned address.
52
+          process_platform();
53
+          return *this;
54
+      }
55
 
56
-       inline void Fill(binary *endian_buffer) const
57
-       {
58
-           //*(TYPE*)endian_buffer = endian_value;
59
-           memcpy(endian_buffer, &endian_value, sizeof(TYPE)); // See above.
60
-       }
61
+      inline void Fill(binary *endian_buffer) const
62
+      {
63
+          //*(TYPE*)endian_buffer = endian_value;
64
+          memcpy(endian_buffer, &endian_value, sizeof(TYPE)); // See above.
65
+      }
66
 
67
-       inline operator const TYPE&() const { return platform_value; }
68
-    // inline TYPE endian() const   { return endian_value; }
69
-       inline const TYPE &endian() const       { return endian_value; }
70
-       inline size_t size() const   { return sizeof(TYPE); }
71
-       inline bool operator!=(const binary *buffer) const {return *((TYPE*)buffer) == platform_value;}
72
+      inline operator const TYPE&() const { return platform_value; }
73
+    //  inline TYPE endian() const   { return endian_value; }
74
+      inline const TYPE &endian() const       { return endian_value; }
75
+      inline size_t size() const   { return sizeof(TYPE); }
76
+      inline bool operator!=(const binary *buffer) const {return *((TYPE*)buffer) == platform_value;}
77
 
78
 #if defined(EBML_STRICT_API)
79
     private:
80
 #else
81
     protected:
82
 #endif
83
-       TYPE platform_value;
84
-       TYPE endian_value;
85
+      TYPE platform_value;
86
+      TYPE endian_value;
87
 
88
-       inline void process_endian()
89
-       {
90
-           endian_value = platform_value;
91
+      inline void process_endian()
92
+      {
93
+          endian_value = platform_value;
94
 #ifdef WORDS_BIGENDIAN
95
-           if (ENDIAN == little_endian)
96
+          if (ENDIAN == little_endian)
97
 #else  // _ENDIANESS_
98
-           if (ENDIAN == big_endian)
99
+          if (ENDIAN == big_endian)
100
 #endif // _ENDIANESS_
101
-               std::reverse(reinterpret_cast<uint8*>(&endian_value),reinterpret_cast<uint8*>(&endian_value+1));
102
-       }
103
+            std::reverse(reinterpret_cast<uint8*>(&endian_value),reinterpret_cast<uint8*>(&endian_value+1));
104
+      }
105
 
106
-       inline void process_platform()
107
-       {
108
-           platform_value = endian_value;
109
+      inline void process_platform()
110
+      {
111
+          platform_value = endian_value;
112
 #ifdef WORDS_BIGENDIAN
113
-           if (ENDIAN == little_endian)
114
+          if (ENDIAN == little_endian)
115
 #else  // _ENDIANESS_
116
-           if (ENDIAN == big_endian)
117
+          if (ENDIAN == big_endian)
118
 #endif // _ENDIANESS_
119
-               std::reverse(reinterpret_cast<uint8*>(&platform_value),reinterpret_cast<uint8*>(&platform_value+1));
120
-       }
121
+            std::reverse(reinterpret_cast<uint8*>(&platform_value),reinterpret_cast<uint8*>(&platform_value+1));
122
+      }
123
 };
124
 
125
 END_LIBEBML_NAMESPACE
126
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlFloat.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlFloat.h Changed
146
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id$
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #ifndef LIBEBML_FLOAT_H
35
 #define LIBEBML_FLOAT_H
36
@@ -46,60 +46,60 @@
37
     \brief Handle all operations on a float EBML element
38
 */
39
 class EBML_DLL_API EbmlFloat : public EbmlElement {
40
-   public:
41
-       enum Precision {
42
-            FLOAT_32
43
-           ,FLOAT_64
44
-       };
45
-
46
-       EbmlFloat(const Precision prec = FLOAT_32);
47
-       EbmlFloat(const double DefaultValue, const Precision prec = FLOAT_32);
48
-       EbmlFloat(const EbmlFloat & ElementToClone);
49
-
50
-       virtual bool ValidateSize() const 
51
-       {
52
-           return (GetSize() == 4 || GetSize() == 8);
53
-       }
54
-   
55
-       filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
56
-       filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
57
-       filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
58
-
59
-       void SetPrecision(const EbmlFloat::Precision prec = FLOAT_32) 
60
-       {
61
-           if (prec == FLOAT_64)
62
-               SetSize_(8);
63
-           else
64
-               SetSize_(4); // default size
65
-       }
66
-
67
-   
68
-//     EbmlFloat & operator=(const float NewValue) { Value = NewValue; return *this;}
69
-       EbmlFloat & operator=(const double NewValue) { Value = NewValue; SetValueIsSet(); return *this;}
70
-
71
-       virtual bool IsSmallerThan(const EbmlElement *Cmp) const;
72
-       
73
-       operator float() const;
74
-       operator double() const;
75
-
76
-       EbmlFloat &SetValue(double NewValue);
77
-       double GetValue() const;
78
-
79
-       void SetDefaultValue(double);
80
-    
81
-       double DefaultVal() const;
82
-
83
-       bool IsDefaultValue() const {
84
-           return (DefaultISset() && Value == DefaultValue);
85
-       }
86
-       
87
+  public:
88
+    enum Precision {
89
+       FLOAT_32
90
+      ,FLOAT_64
91
+    };
92
+
93
+    EbmlFloat(const Precision prec = FLOAT_32);
94
+    EbmlFloat(const double DefaultValue, const Precision prec = FLOAT_32);
95
+    EbmlFloat(const EbmlFloat & ElementToClone);
96
+
97
+    virtual bool ValidateSize() const
98
+    {
99
+      return (GetSize() == 4 || GetSize() == 8);
100
+    }
101
+
102
+    filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
103
+    filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
104
+    filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
105
+
106
+    void SetPrecision(const EbmlFloat::Precision prec = FLOAT_32)
107
+    {
108
+      if (prec == FLOAT_64)
109
+        SetSize_(8);
110
+      else
111
+        SetSize_(4); // default size
112
+    }
113
+
114
+
115
+//    EbmlFloat & operator=(const float NewValue) { Value = NewValue; return *this;}
116
+    EbmlFloat & operator=(const double NewValue) { Value = NewValue; SetValueIsSet(); return *this;}
117
+
118
+    virtual bool IsSmallerThan(const EbmlElement *Cmp) const;
119
+
120
+    operator float() const;
121
+    operator double() const;
122
+
123
+    EbmlFloat &SetValue(double NewValue);
124
+    double GetValue() const;
125
+
126
+    void SetDefaultValue(double);
127
+
128
+    double DefaultVal() const;
129
+
130
+    bool IsDefaultValue() const {
131
+      return (DefaultISset() && Value == DefaultValue);
132
+    }
133
+
134
 #if defined(EBML_STRICT_API)
135
     private:
136
 #else
137
     protected:
138
 #endif
139
-       double Value; /// The actual value of the element
140
-       double DefaultValue;
141
+    double Value; /// The actual value of the element
142
+    double DefaultValue;
143
 };
144
 
145
 END_LIBEBML_NAMESPACE
146
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlHead.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlHead.h Changed
47
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlHead.h 639 2004-07-09 20:59:14Z mosu $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id: EbmlHead.h 639 2004-07-09 20:59:14Z mosu $
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #ifndef LIBEBML_HEAD_H
35
 #define LIBEBML_HEAD_H
36
@@ -42,8 +42,8 @@
37
 START_LIBEBML_NAMESPACE
38
 
39
 DECLARE_EBML_MASTER(EbmlHead)
40
-   public:
41
-       EbmlHead(const EbmlHead & ElementToClone) : EbmlMaster(ElementToClone) {}
42
+  public:
43
+    EbmlHead(const EbmlHead & ElementToClone) : EbmlMaster(ElementToClone) {}
44
 
45
         EBML_CONCRETE_CLASS(EbmlHead)
46
 };
47
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlId.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlId.h Changed
117
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlId.h 936 2004-11-10 20:46:28Z mosu $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id: EbmlId.h 936 2004-11-10 20:46:28Z mosu $
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #ifndef LIBEBML_ID_H
35
 #define LIBEBML_ID_H
36
@@ -50,48 +50,48 @@
37
 #endif
38
 
39
 /*!
40
-   \class EbmlId
41
+  \class EbmlId
42
 */
43
 class EBML_DLL_API EbmlId {
44
-   public:
45
-       EbmlId(const binary aValue[4], const unsigned int aLength)
46
-           :Length(aLength)
47
-       {
48
-           Value = 0;
49
-           unsigned int i;
50
-           for (i=0; i<aLength; i++) {
51
-               Value <<= 8;
52
-               Value += aValue[i];
53
-           }
54
-       }
55
+  public:
56
+    EbmlId(const binary aValue[4], const unsigned int aLength)
57
+      :Length(aLength)
58
+    {
59
+      Value = 0;
60
+      unsigned int i;
61
+      for (i=0; i<aLength; i++) {
62
+        Value <<= 8;
63
+        Value += aValue[i];
64
+      }
65
+    }
66
 
67
-       EbmlId(const uint32 aValue, const unsigned int aLength)
68
-           :Value(aValue), Length(aLength) {}
69
+    EbmlId(const uint32 aValue, const unsigned int aLength)
70
+      :Value(aValue), Length(aLength) {}
71
 
72
-       inline bool operator==(const EbmlId & TestId) const
73
-       {
74
-           return ((TestId.Length == Length) && (TestId.Value == Value));
75
-       }
76
-       inline bool operator!=(const EbmlId & TestId) const
77
-       {
78
-           return !(*this == TestId);
79
-       }
80
+    inline bool operator==(const EbmlId & TestId) const
81
+    {
82
+      return ((TestId.Length == Length) && (TestId.Value == Value));
83
+    }
84
+    inline bool operator!=(const EbmlId & TestId) const
85
+    {
86
+      return !(*this == TestId);
87
+    }
88
 
89
-       inline void Fill(binary * Buffer) const {
90
-           unsigned int i;
91
-           for (i = 0; i<Length; i++) {
92
-               Buffer[i] = (Value >> (8*(Length-i-1))) & 0xFF;
93
-           }
94
-       }
95
+    inline void Fill(binary * Buffer) const {
96
+      unsigned int i;
97
+      for (i = 0; i<Length; i++) {
98
+        Buffer[i] = (Value >> (8*(Length-i-1))) & 0xFF;
99
+      }
100
+    }
101
 
102
-        inline size_t GetLength() const { return Length; }
103
-        inline uint32 GetValue() const { return Value; }
104
+    inline unsigned int GetLength() const { return (unsigned int)Length; }
105
+    inline uint32 GetValue() const { return Value; }
106
 
107
 #if defined(EBML_STRICT_API)
108
     private:
109
 #endif
110
-       uint32 Value;
111
-       size_t Length;
112
+    uint32 Value;
113
+    size_t Length;
114
 };
115
 
116
 END_LIBEBML_NAMESPACE
117
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlMaster.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlMaster.h Changed
201
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlMaster.h 1232 2005-10-15 15:56:52Z robux4 $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id: EbmlMaster.h 1232 2005-10-15 15:56:52Z robux4 $
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #ifndef LIBEBML_MASTER_H
35
 #define LIBEBML_MASTER_H
36
@@ -57,73 +57,74 @@
37
     \brief Handle all operations on an EBML element that contains other EBML elements
38
 */
39
 class EBML_DLL_API EbmlMaster : public EbmlElement {
40
-   public:
41
-       EbmlMaster(const EbmlSemanticContext & aContext, bool bSizeIsKnown = true);
42
-       EbmlMaster(const EbmlMaster & ElementToClone);
43
-       virtual bool ValidateSize() const {return true;}
44
-       /*!
45
-           \warning be carefull to clear the memory allocated in the ElementList elsewhere
46
-       */
47
-       virtual ~EbmlMaster();
48
-   
49
-       filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
50
+  public:
51
+    EbmlMaster(const EbmlSemanticContext & aContext, bool bSizeIsKnown = true);
52
+    EbmlMaster(const EbmlMaster & ElementToClone);
53
+    virtual bool ValidateSize() const {return true;}
54
+    /*!
55
+      \warning be carefull to clear the memory allocated in the ElementList elsewhere
56
+    */
57
+    virtual ~EbmlMaster();
58
+
59
+    filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
60
 #ifndef EBML_NO_READ
61
-       filepos_t ReadData(IOCallback & input, ScopeMode ReadFully);
62
+    filepos_t ReadData(IOCallback & input, ScopeMode ReadFully);
63
 #endif
64
-       filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
65
-       
66
-       /*!
67
-           \brief Set wether the size is finite (size is known in advance when writing, or infinite size is not known on writing)
68
-       */
69
-       bool SetSizeInfinite(bool aIsInfinite = true) {SetSizeIsFinite(!aIsInfinite); return true;}
70
-   
71
-       bool PushElement(EbmlElement & element);
72
-       uint64 GetSize() const { 
73
-           if (IsFiniteSize())
74
+    filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
75
+
76
+    /*!
77
+      \brief Set wether the size is finite (size is known in advance when writing, or infinite size is not known on writing)
78
+    */
79
+    bool SetSizeInfinite(bool aIsInfinite = true) {SetSizeIsFinite(!aIsInfinite); return true;}
80
+
81
+    bool PushElement(EbmlElement & element);
82
+    uint64 GetSize() const {
83
+      if (IsFiniteSize())
84
                 return EbmlElement::GetSize();
85
-           else
86
-               return (0-1);
87
-       }
88
-       
89
-       uint64 GetDataStart() const {
90
-           return GetElementPosition() + EBML_ID_LENGTH((const EbmlId&)*this) + CodedSizeLength(GetSize(), GetSizeLength(), IsFiniteSize());
91
-       }
92
-
93
-       /*!
94
-           \brief find the element corresponding to the ID of the element, NULL if not found
95
-       */
96
-       EbmlElement *FindElt(const EbmlCallbacks & Callbacks) const;
97
-       /*!
98
-           \brief find the first element corresponding to the ID of the element
99
-       */
100
-       EbmlElement *FindFirstElt(const EbmlCallbacks & Callbacks, bool bCreateIfNull);
101
-       EbmlElement *FindFirstElt(const EbmlCallbacks & Callbacks) const;
102
-
103
-       /*!
104
-           \brief find the element of the same type of PasElt following in the list of elements
105
-       */
106
-       EbmlElement *FindNextElt(const EbmlElement & PastElt, bool bCreateIfNull);
107
-       EbmlElement *FindNextElt(const EbmlElement & PastElt) const;
108
-       EbmlElement *AddNewElt(const EbmlCallbacks & Callbacks);
109
-
110
-       /*!
111
-           \brief add an element at a specified location
112
-       */
113
-       bool InsertElement(EbmlElement & element, size_t position = 0);
114
-       bool InsertElement(EbmlElement & element, const EbmlElement & before);
115
-
116
-       /*!
117
-           \brief Read the data and keep the known children
118
-       */
119
+      else
120
+        return (0-1);
121
+    }
122
+
123
+    uint64 GetDataStart() const {
124
+      return GetElementPosition() + EBML_ID_LENGTH((const EbmlId&)*this) + CodedSizeLength(GetSize(), GetSizeLength(), IsFiniteSize());
125
+    }
126
+
127
+    /*!
128
+      \brief find the element corresponding to the ID of the element, NULL if not found
129
+    */
130
+    EbmlElement *FindElt(const EbmlCallbacks & Callbacks) const;
131
+    /*!
132
+      \brief find the first element corresponding to the ID of the element
133
+    */
134
+    EbmlElement *FindFirstElt(const EbmlCallbacks & Callbacks, bool bCreateIfNull);
135
+    EbmlElement *FindFirstElt(const EbmlCallbacks & Callbacks) const;
136
+
137
+    /*!
138
+      \brief find the element of the same type of PasElt following in the list of elements
139
+    */
140
+    EbmlElement *FindNextElt(const EbmlElement & PastElt, bool bCreateIfNull);
141
+    EbmlElement *FindNextElt(const EbmlElement & PastElt) const;
142
+    EbmlElement *AddNewElt(const EbmlCallbacks & Callbacks);
143
+
144
+    /*!
145
+      \brief add an element at a specified location
146
+    */
147
+    bool InsertElement(EbmlElement & element, size_t position = 0);
148
+    bool InsertElement(EbmlElement & element, const EbmlElement & before);
149
+
150
+    /*!
151
+      \brief Read the data and keep the known children
152
+    */
153
 #ifndef EBML_NO_READ
154
-       void Read(EbmlStream & inDataStream, const EbmlSemanticContext & Context, int & UpperEltFound, EbmlElement * & FoundElt, bool AllowDummyElt, ScopeMode ReadFully = SCOPE_ALL_DATA);
155
+    void Read(EbmlStream & inDataStream, const EbmlSemanticContext & Context, int & UpperEltFound, EbmlElement * & FoundElt, bool AllowDummyElt, ScopeMode ReadFully = SCOPE_ALL_DATA);
156
 #endif
157
-       /*!
158
-           \brief sort Data when they can
159
-       */
160
-       void Sort();
161
 
162
-       size_t ListSize() const {return ElementList.size();}
163
+    /*!
164
+      \brief sort Data when they can
165
+    */
166
+    void Sort();
167
+
168
+    size_t ListSize() const {return ElementList.size();}
169
     std::vector<EbmlElement *> const &GetElementList() const {return ElementList;}
170
     std::vector<EbmlElement *> &GetElementList() {return ElementList;}
171
 
172
@@ -136,76 +137,76 @@
173
         inline EBML_MASTER_CONST_RITERATOR rbegin() const {return ElementList.rbegin();}
174
         inline EBML_MASTER_CONST_RITERATOR rend() const {return ElementList.rend();}
175
 
176
-       EbmlElement * operator[](unsigned int position) {return ElementList[position];}
177
-       const EbmlElement * operator[](unsigned int position) const {return ElementList[position];}
178
-
179
-       bool IsDefaultValue() const {
180
-           return (ElementList.size() == 0);
181
-       }
182
-       virtual bool IsMaster() const {return true;}
183
-
184
-       /*!
185
-           \brief verify that all mandatory elements are present
186
-           \note usefull after reading or before writing
187
-       */
188
-       bool CheckMandatory() const;
189
-
190
-       /*!
191
-           \brief Remove an element from the list of the master
192
-       */
193
-       void Remove(size_t Index);
194
-       void Remove(EBML_MASTER_ITERATOR & Itr);
195
-       void Remove(EBML_MASTER_RITERATOR & Itr);
196
-
197
-       /*!
198
-           \brief remove all elements, even the mandatory ones
199
-       */
200
-       void RemoveAll() {ElementList.clear();}
201
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlSInteger.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlSInteger.h Changed
105
 
1
@@ -19,9 +19,9 @@
2
 **
3
 ** You should have received a copy of the GNU Lesser General Public
4
 ** License along with this library; if not, write to the Free Software
5
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
6
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
7
 **
8
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
9
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
10
 **
11
 ** Contact license@matroska.org if any conditions of this licensing are
12
 ** not clear to you.
13
@@ -29,11 +29,11 @@
14
 **********************************************************************/
15
 
16
 /*!
17
-   \file
18
-   \version \$Id$
19
-   \author Steve Lhomme     <robux4 @ users.sf.net>
20
-   \author Julien Coloos    <suiryc @ users.sf.net>
21
-   \author Moritz Bunkus    <moritz @ bunkus.org>
22
+  \file
23
+  \version \$Id$
24
+  \author Steve Lhomme     <robux4 @ users.sf.net>
25
+  \author Julien Coloos    <suiryc @ users.sf.net>
26
+  \author Moritz Bunkus    <moritz @ bunkus.org>
27
 */
28
 #ifndef LIBEBML_SINTEGER_H
29
 #define LIBEBML_SINTEGER_H
30
@@ -52,48 +52,48 @@
31
     \brief Handle all operations on a signed integer EBML element
32
 */
33
 class EBML_DLL_API EbmlSInteger : public EbmlElement {
34
-   public:
35
-       EbmlSInteger();
36
-       EbmlSInteger(int64 DefaultValue);
37
-       EbmlSInteger(const EbmlSInteger & ElementToClone);
38
+  public:
39
+    EbmlSInteger();
40
+    EbmlSInteger(int64 DefaultValue);
41
+    EbmlSInteger(const EbmlSInteger & ElementToClone);
42
 
43
-       EbmlSInteger & operator = (int64 NewValue) {Value = NewValue; SetValueIsSet(); return *this;}
44
+    EbmlSInteger & operator = (int64 NewValue) {Value = NewValue; SetValueIsSet(); return *this;}
45
 
46
-       /*!
47
-           Set the default size of the integer (usually 1,2,4 or 8)
48
-       */
49
+    /*!
50
+      Set the default size of the integer (usually 1,2,4 or 8)
51
+    */
52
         virtual void SetDefaultSize(uint64 nDefaultSize = DEFAULT_INT_SIZE) {EbmlElement::SetDefaultSize(nDefaultSize); SetSize_(nDefaultSize);}
53
 
54
-       virtual bool ValidateSize() const {return IsFiniteSize() && (GetSize() <= 8);}
55
-       filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
56
-       filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
57
-       filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
58
+    virtual bool ValidateSize() const {return IsFiniteSize() && (GetSize() <= 8);}
59
+    filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
60
+    filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
61
+    filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
62
 
63
-       virtual bool IsSmallerThan(const EbmlElement *Cmp) const;
64
+    virtual bool IsSmallerThan(const EbmlElement *Cmp) const;
65
 
66
-       operator int8() const;
67
-       operator int16() const;
68
-       operator int32() const;
69
-       operator int64() const;
70
+    operator int8() const;
71
+    operator int16() const;
72
+    operator int32() const;
73
+    operator int64() const;
74
 
75
-       EbmlSInteger &SetValue(int64 NewValue);
76
-       int64 GetValue() const;
77
+    EbmlSInteger &SetValue(int64 NewValue);
78
+    int64 GetValue() const;
79
 
80
-       void SetDefaultValue(int64 aValue) {assert(!DefaultISset()); DefaultValue = aValue; SetDefaultIsSet();}
81
+    void SetDefaultValue(int64 aValue) {assert(!DefaultISset()); DefaultValue = aValue; SetDefaultIsSet();}
82
 
83
-       int64 DefaultVal() const {assert(DefaultISset()); return DefaultValue;}
84
+    int64 DefaultVal() const {assert(DefaultISset()); return DefaultValue;}
85
 
86
-       bool IsDefaultValue() const {
87
-           return (DefaultISset() && Value == DefaultValue);
88
-       }
89
+    bool IsDefaultValue() const {
90
+      return (DefaultISset() && Value == DefaultValue);
91
+    }
92
 
93
 #if defined(EBML_STRICT_API)
94
     private:
95
 #else
96
     protected:
97
 #endif
98
-       int64 Value; /// The actual value of the element
99
-       int64 DefaultValue;
100
+    int64 Value; /// The actual value of the element
101
+    int64 DefaultValue;
102
 };
103
 
104
 END_LIBEBML_NAMESPACE
105
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlStream.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlStream.h Changed
78
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id$
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #ifndef LIBEBML_STREAM_H
35
 #define LIBEBML_STREAM_H
36
@@ -47,20 +47,20 @@
37
     \brief Handle an input/output stream of EBML elements
38
 */
39
 class EBML_DLL_API EbmlStream {
40
-   public:
41
-       EbmlStream(IOCallback & output);
42
-       ~EbmlStream();
43
-   
44
-       /*!
45
-           \brief Find a possible next ID in the data stream
46
-           \param MaxDataSize The maximum possible of the data in the element (for sanity checks)
47
-           \note the user will have to delete that element later
48
-       */
49
-       EbmlElement * FindNextID(const EbmlCallbacks & ClassInfos, uint64 MaxDataSize);
50
+  public:
51
+    EbmlStream(IOCallback & output);
52
+    ~EbmlStream();
53
+
54
+    /*!
55
+      \brief Find a possible next ID in the data stream
56
+      \param MaxDataSize The maximum possible of the data in the element (for sanity checks)
57
+      \note the user will have to delete that element later
58
+    */
59
+    EbmlElement * FindNextID(const EbmlCallbacks & ClassInfos, uint64 MaxDataSize);
60
 
61
-       EbmlElement * FindNextElement(const EbmlSemanticContext & Context, int & UpperLevel, uint64 MaxDataSize, bool AllowDummyElt, unsigned int MaxLowerLevel = 1);
62
+    EbmlElement * FindNextElement(const EbmlSemanticContext & Context, int & UpperLevel, uint64 MaxDataSize, bool AllowDummyElt, unsigned int MaxLowerLevel = 1);
63
 
64
-       inline IOCallback & I_O() {return Stream;}
65
+    inline IOCallback & I_O() {return Stream;}
66
         operator IOCallback &() {return Stream;}
67
 
68
 #if defined(EBML_STRICT_API)
69
@@ -68,7 +68,7 @@
70
 #else
71
     protected:
72
 #endif
73
-       IOCallback & Stream;
74
+    IOCallback & Stream;
75
 };
76
 
77
 END_LIBEBML_NAMESPACE
78
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlString.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlString.h Changed
99
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id$
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #ifndef LIBEBML_STRING_H
35
 #define LIBEBML_STRING_H
36
@@ -48,39 +48,39 @@
37
     \brief Handle all operations on a printable string EBML element
38
 */
39
 class EBML_DLL_API EbmlString : public EbmlElement {
40
-   public:
41
-       EbmlString();
42
-       EbmlString(const ccc::string & aDefaultValue);
43
-       EbmlString(const EbmlString & ElementToClone);
44
-   
45
-       virtual ~EbmlString() {}
46
-   
47
-       virtual bool ValidateSize() const {return IsFiniteSize();} // any size is possible
48
-       filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
49
-       filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
50
-       filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
51
-   
52
-       EbmlString & operator=(const ccc::string &);
53
-       operator const ref::string &() const;
54
-   
55
+  public:
56
+    EbmlString();
57
+    EbmlString(const ccc::string & aDefaultValue);
58
+    EbmlString(const EbmlString & ElementToClone);
59
+
60
+    virtual ~EbmlString() {}
61
+
62
+    virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() < 0x7FFFFFFF;} // any size is possible
63
+    filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
64
+    filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
65
+    filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
66
+
67
+    EbmlString & operator=(const ccc::string &);
68
+    operator const ref::string &() const;
69
+
70
     EbmlString &SetValue(ccc::string const &NewValue);
71
     ref::string GetValue() const;
72
 
73
-       void SetDefaultValue(ccc::string &);
74
-    
75
-       const ref::string & DefaultVal() const;
76
+    void SetDefaultValue(ccc::string &);
77
+
78
+    const ref::string & DefaultVal() const;
79
 
80
-       bool IsDefaultValue() const {
81
-           return (DefaultISset() && Value == DefaultValue);
82
-       }
83
+    bool IsDefaultValue() const {
84
+      return (DefaultISset() && Value == DefaultValue);
85
+    }
86
 
87
 #if defined(EBML_STRICT_API)
88
     private:
89
 #else
90
     protected:
91
 #endif
92
-       buf::string Value;  /// The actual value of the element
93
-       buf::string DefaultValue;
94
+    buf::string Value;  /// The actual value of the element
95
+    buf::string DefaultValue;
96
 };
97
 
98
 END_LIBEBML_NAMESPACE
99
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlSubHead.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlSubHead.h Changed
101
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlSubHead.h 639 2004-07-09 20:59:14Z mosu $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id: EbmlSubHead.h 639 2004-07-09 20:59:14Z mosu $
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #ifndef LIBEBML_SUBHEAD_H
35
 #define LIBEBML_SUBHEAD_H
36
@@ -44,50 +44,50 @@
37
 START_LIBEBML_NAMESPACE
38
 
39
 DECLARE_EBML_UINTEGER(EVersion)
40
-   public:
41
-       EVersion(const EVersion & ElementToClone) : EbmlUInteger(ElementToClone) {}
42
+  public:
43
+    EVersion(const EVersion & ElementToClone) : EbmlUInteger(ElementToClone) {}
44
 
45
         EBML_CONCRETE_CLASS(EVersion)
46
 };
47
 
48
 DECLARE_EBML_UINTEGER(EReadVersion)
49
-   public:
50
-       EReadVersion(const EReadVersion & ElementToClone) : EbmlUInteger(ElementToClone) {}
51
+  public:
52
+    EReadVersion(const EReadVersion & ElementToClone) : EbmlUInteger(ElementToClone) {}
53
 
54
         EBML_CONCRETE_CLASS(EReadVersion)
55
 };
56
 
57
 DECLARE_EBML_UINTEGER(EMaxIdLength)
58
-   public:
59
-       EMaxIdLength(const EMaxIdLength & ElementToClone) : EbmlUInteger(ElementToClone) {}
60
+  public:
61
+    EMaxIdLength(const EMaxIdLength & ElementToClone) : EbmlUInteger(ElementToClone) {}
62
 
63
         EBML_CONCRETE_CLASS(EMaxIdLength)
64
 };
65
 
66
 DECLARE_EBML_UINTEGER(EMaxSizeLength)
67
-   public:
68
-       EMaxSizeLength(const EMaxSizeLength & ElementToClone) : EbmlUInteger(ElementToClone) {}
69
+  public:
70
+    EMaxSizeLength(const EMaxSizeLength & ElementToClone) : EbmlUInteger(ElementToClone) {}
71
 
72
         EBML_CONCRETE_CLASS(EMaxSizeLength)
73
 };
74
 
75
 DECLARE_EBML_STRING(EDocType)
76
-   public:
77
-       EDocType(const EDocType & ElementToClone) : EbmlString(ElementToClone) {}
78
+  public:
79
+    EDocType(const EDocType & ElementToClone) : EbmlString(ElementToClone) {}
80
 
81
         EBML_CONCRETE_CLASS(EDocType)
82
 };
83
 
84
 DECLARE_EBML_UINTEGER(EDocTypeVersion)
85
-   public:
86
-       EDocTypeVersion(const EDocTypeVersion & ElementToClone) : EbmlUInteger(ElementToClone) {}
87
+  public:
88
+    EDocTypeVersion(const EDocTypeVersion & ElementToClone) : EbmlUInteger(ElementToClone) {}
89
 
90
         EBML_CONCRETE_CLASS(EDocTypeVersion)
91
 };
92
 
93
 DECLARE_EBML_UINTEGER(EDocTypeReadVersion)
94
-   public:
95
-       EDocTypeReadVersion(const EDocTypeReadVersion & ElementToClone) : EbmlUInteger(ElementToClone) {}
96
+  public:
97
+    EDocTypeReadVersion(const EDocTypeReadVersion & ElementToClone) : EbmlUInteger(ElementToClone) {}
98
 
99
         EBML_CONCRETE_CLASS(EDocTypeReadVersion)
100
 };
101
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlTypes.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlTypes.h Changed
47
 
1
@@ -9,17 +9,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -27,8 +27,8 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlTypes.h 639 2004-07-09 20:59:14Z mosu $
29
+  \file
30
+  \version \$Id: EbmlTypes.h 639 2004-07-09 20:59:14Z mosu $
31
 */
32
 #ifndef LIBEBML_TYPES_H
33
 #define LIBEBML_TYPES_H
34
@@ -62,9 +62,9 @@
35
 
36
 
37
 enum ScopeMode {
38
-   SCOPE_PARTIAL_DATA = 0,
39
-   SCOPE_ALL_DATA,
40
-   SCOPE_NO_DATA
41
+  SCOPE_PARTIAL_DATA = 0,
42
+  SCOPE_ALL_DATA,
43
+  SCOPE_NO_DATA
44
 };
45
 
46
 END_LIBEBML_NAMESPACE
47
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlUInteger.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlUInteger.h Changed
125
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,11 +29,11 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Julien Coloos    <suiryc @ users.sf.net>
31
-   \author Moritz Bunkus    <moritz @ bunkus.org>
32
+  \file
33
+  \version \$Id$
34
+  \author Steve Lhomme     <robux4 @ users.sf.net>
35
+  \author Julien Coloos    <suiryc @ users.sf.net>
36
+  \author Moritz Bunkus    <moritz @ bunkus.org>
37
 */
38
 #ifndef LIBEBML_UINTEGER_H
39
 #define LIBEBML_UINTEGER_H
40
@@ -50,48 +50,48 @@
41
     \brief Handle all operations on an unsigned integer EBML element
42
 */
43
 class EBML_DLL_API EbmlUInteger : public EbmlElement {
44
-   public:
45
-       EbmlUInteger();
46
-       EbmlUInteger(uint64 DefaultValue);
47
-       EbmlUInteger(const EbmlUInteger & ElementToClone);
48
-   
49
-       EbmlUInteger & operator=(uint64 NewValue) {Value = NewValue; SetValueIsSet(); return *this;}
50
-
51
-       /*!
52
-           Set the default size of the integer (usually 1,2,4 or 8)
53
-       */
54
-       virtual void SetDefaultSize(uint64 nDefaultSize = DEFAULT_UINT_SIZE) {EbmlElement::SetDefaultSize(nDefaultSize); SetSize_(nDefaultSize);}
55
-
56
-       virtual bool ValidateSize() const {return IsFiniteSize() && (GetSize() <= 8);}
57
-       filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
58
-       filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
59
-       filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
60
-       
61
-       virtual bool IsSmallerThan(const EbmlElement *Cmp) const;
62
-       
63
-       operator uint8()  const;
64
-       operator uint16() const;
65
-       operator uint32() const;
66
-       operator uint64() const;
67
-
68
-       EbmlUInteger &SetValue(uint64 NewValue);
69
-       uint64 GetValue() const;
70
-
71
-       void SetDefaultValue(uint64);
72
-    
73
-       uint64 DefaultVal() const;
74
-
75
-       bool IsDefaultValue() const {
76
-           return (DefaultISset() && Value == DefaultValue);
77
-       }
78
+  public:
79
+    EbmlUInteger();
80
+    EbmlUInteger(uint64 DefaultValue);
81
+    EbmlUInteger(const EbmlUInteger & ElementToClone);
82
+
83
+    EbmlUInteger & operator=(uint64 NewValue) {Value = NewValue; SetValueIsSet(); return *this;}
84
+
85
+    /*!
86
+      Set the default size of the integer (usually 1,2,4 or 8)
87
+    */
88
+    virtual void SetDefaultSize(uint64 nDefaultSize = DEFAULT_UINT_SIZE) {EbmlElement::SetDefaultSize(nDefaultSize); SetSize_(nDefaultSize);}
89
+
90
+    virtual bool ValidateSize() const {return IsFiniteSize() && (GetSize() <= 8);}
91
+    filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
92
+    filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
93
+    filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
94
+
95
+    virtual bool IsSmallerThan(const EbmlElement *Cmp) const;
96
+
97
+    operator uint8()  const;
98
+    operator uint16() const;
99
+    operator uint32() const;
100
+    operator uint64() const;
101
+
102
+    EbmlUInteger &SetValue(uint64 NewValue);
103
+    uint64 GetValue() const;
104
+
105
+    void SetDefaultValue(uint64);
106
+
107
+    uint64 DefaultVal() const;
108
+
109
+    bool IsDefaultValue() const {
110
+      return (DefaultISset() && Value == DefaultValue);
111
+    }
112
 
113
 #if defined(EBML_STRICT_API)
114
     private:
115
 #else
116
     protected:
117
 #endif
118
-       uint64 Value; /// The actual value of the element
119
-       uint64 DefaultValue;
120
+    uint64 Value; /// The actual value of the element
121
+    uint64 DefaultValue;
122
 };
123
 
124
 END_LIBEBML_NAMESPACE
125
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlUnicodeString.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlUnicodeString.h Changed
183
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,11 +29,11 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Moritz Bunkus <moritz @ bunkus.org>
31
-   \author Jory Stone       <jcsston @ toughguy.net>
32
+  \file
33
+  \version \$Id$
34
+  \author Steve Lhomme     <robux4 @ users.sf.net>
35
+  \author Moritz Bunkus <moritz @ bunkus.org>
36
+  \author Jory Stone       <jcsston @ toughguy.net>
37
 */
38
 #ifndef LIBEBML_UNICODE_STRING_H
39
 #define LIBEBML_UNICODE_STRING_H
40
@@ -52,87 +52,87 @@
41
 */
42
 class EBML_DLL_API UTFstring {
43
 public:
44
-   typedef wchar_t value_type;
45
-
46
-   UTFstring();
47
-   UTFstring(const wchar_t *); // should be NULL terminated
48
-   UTFstring(const UTFstring &);
49
-   //UTFstring(std::wstring const &);
50
-   
51
-   virtual ~UTFstring();
52
-   bool operator==(const UTFstring&) const;
53
-   inline bool operator!=(const UTFstring &cmp) const
54
-   {
55
-       return !(*this == cmp);
56
-   }
57
-   UTFstring & operator=(const UTFstring &);
58
-   UTFstring & operator=(const wchar_t *);
59
-   UTFstring & operator=(wchar_t);
60
-
61
-   /// Return length of string
62
-   size_t length() const {return _Length;}
63
-
64
-   operator const wchar_t*() const;
65
-   const wchar_t* c_str() const {return _Data;}
66
-
67
-   const ref::string & GetUTF8() const {return UTF8string;}
68
-   void SetUTF8(const ccc::string &);
69
+  typedef wchar_t value_type;
70
+
71
+  UTFstring();
72
+  UTFstring(const wchar_t *); // should be NULL terminated
73
+  UTFstring(const UTFstring &);
74
+  //UTFstring(std::wstring const &);
75
+
76
+  virtual ~UTFstring();
77
+  bool operator==(const UTFstring&) const;
78
+  inline bool operator!=(const UTFstring &cmp) const
79
+  {
80
+    return !(*this == cmp);
81
+  }
82
+  UTFstring & operator=(const UTFstring &);
83
+  UTFstring & operator=(const wchar_t *);
84
+  UTFstring & operator=(wchar_t);
85
+
86
+  /// Return length of string
87
+  size_t length() const {return _Length;}
88
+
89
+  operator const wchar_t*() const;
90
+  const wchar_t* c_str() const {return _Data;}
91
+
92
+  const ref::string & GetUTF8() const {return UTF8string;}
93
+  void SetUTF8(const ccc::string &);
94
 
95
 #if defined(EBML_STRICT_API)
96
     private:
97
 #else
98
     protected:
99
 #endif
100
-   size_t _Length; ///< length of the UCS string excluding the \0
101
-   wchar_t* _Data; ///< internal UCS representation    
102
-   buf::string UTF8string;
103
-   static bool wcscmp_internal(const wchar_t *str1, const wchar_t *str2);
104
-   void UpdateFromUTF8();
105
-   void UpdateFromUCS2();
106
+  size_t _Length; ///< length of the UCS string excluding the \0
107
+  wchar_t* _Data; ///< internal UCS representation
108
+  buf::string UTF8string;
109
+  static bool wcscmp_internal(const wchar_t *str1, const wchar_t *str2);
110
+  void UpdateFromUTF8();
111
+  void UpdateFromUCS2();
112
 };
113
 
114
 
115
 /*!
116
     \class EbmlUnicodeString
117
     \brief Handle all operations on a Unicode string EBML element
118
-   \note internally treated as a string made of wide characters (ie UCS-2 or UCS-4 depending on the machine)
119
+  \note internally treated as a string made of wide characters (ie UCS-2 or UCS-4 depending on the machine)
120
 */
121
 class EBML_DLL_API EbmlUnicodeString : public EbmlElement {
122
-   public:
123
-       EbmlUnicodeString();
124
-       EbmlUnicodeString(const UTFstring & DefaultValue);
125
-       EbmlUnicodeString(const EbmlUnicodeString & ElementToClone);
126
-   
127
-       virtual ~EbmlUnicodeString() {}
128
-   
129
-       virtual bool ValidateSize() const {return IsFiniteSize();} // any size is possible
130
-       filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
131
-       filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
132
-       filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
133
-   
134
-       EbmlUnicodeString & operator=(const UTFstring &); ///< platform dependant code
135
-       operator const UTFstring &() const;
136
-   
137
+  public:
138
+    EbmlUnicodeString();
139
+    EbmlUnicodeString(const UTFstring & DefaultValue);
140
+    EbmlUnicodeString(const EbmlUnicodeString & ElementToClone);
141
+
142
+    virtual ~EbmlUnicodeString() {}
143
+
144
+    virtual bool ValidateSize() const {return IsFiniteSize();} // any size is possible
145
+    filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
146
+    filepos_t ReadData(IOCallback & input, ScopeMode ReadFully = SCOPE_ALL_DATA);
147
+    filepos_t UpdateSize(bool bWithDefault = false, bool bForceRender = false);
148
+
149
+    EbmlUnicodeString & operator=(const UTFstring &); ///< platform dependant code
150
+    operator const UTFstring &() const;
151
+
152
     EbmlUnicodeString &SetValue(UTFstring const &NewValue);
153
     EbmlUnicodeString &SetValueUTF8(ccc::string const &NewValue);
154
     UTFstring GetValue() const;
155
     ref::string GetValueUTF8() const;
156
 
157
-       void SetDefaultValue(UTFstring &);
158
-    
159
-       const UTFstring & DefaultVal() const;
160
+    void SetDefaultValue(UTFstring &);
161
+
162
+    const UTFstring & DefaultVal() const;
163
 
164
-       bool IsDefaultValue() const {
165
-           return (DefaultISset() && Value == DefaultValue);
166
-       }
167
+    bool IsDefaultValue() const {
168
+      return (DefaultISset() && Value == DefaultValue);
169
+    }
170
 
171
 #if defined(EBML_STRICT_API)
172
     private:
173
 #else
174
     protected:
175
 #endif
176
-       UTFstring Value; /// The actual value of the element
177
-       UTFstring DefaultValue;
178
+    UTFstring Value; /// The actual value of the element
179
+    UTFstring DefaultValue;
180
 };
181
 
182
 END_LIBEBML_NAMESPACE
183
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlVersion.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlVersion.h Changed
42
 
1
@@ -19,9 +19,9 @@
2
 **
3
 ** You should have received a copy of the GNU Lesser General Public
4
 ** License along with this library; if not, write to the Free Software
5
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
6
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
7
 **
8
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
9
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
10
 **
11
 ** Contact license@matroska.org if any conditions of this licensing are
12
 ** not clear to you.
13
@@ -29,9 +29,9 @@
14
 **********************************************************************/
15
 
16
 /*!
17
-   \file
18
-   \version \$Id$
19
-   \author Steve Lhomme     <robux4 @ users.sf.net>
20
+  \file
21
+  \version \$Id$
22
+  \author Steve Lhomme     <robux4 @ users.sf.net>
23
 */
24
 #ifndef LIBEBML_VERSION_H
25
 #define LIBEBML_VERSION_H
26
@@ -42,13 +42,13 @@
27
 
28
 START_LIBEBML_NAMESPACE
29
 
30
-#define LIBEBML_VERSION 0x010300
31
+#define LIBEBML_VERSION 0x010303
32
 
33
 extern const ccc::string EbmlCodeVersion;
34
 extern const ccc::string EbmlCodeDate;
35
 
36
 /*!
37
-   \todo Closer relation between an element and the context it comes from (context is an element attribute ?)
38
+  \todo Closer relation between an element and the context it comes from (context is an element attribute ?)
39
 */
40
 
41
 END_LIBEBML_NAMESPACE
42
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/EbmlVoid.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/EbmlVoid.h Changed
83
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlVoid.h 1079 2005-03-03 13:18:14Z robux4 $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id: EbmlVoid.h 1079 2005-03-03 13:18:14Z robux4 $
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #ifndef LIBEBML_VOID_H
35
 #define LIBEBML_VOID_H
36
@@ -42,28 +42,28 @@
37
 START_LIBEBML_NAMESPACE
38
 
39
 DECLARE_EBML_BINARY(EbmlVoid)
40
-   public:
41
-       EbmlVoid(const EbmlVoid & ElementToClone) :EbmlBinary(ElementToClone){}
42
+  public:
43
+    EbmlVoid(const EbmlVoid & ElementToClone) :EbmlBinary(ElementToClone){}
44
 
45
-       /*!
46
-           \brief Set the size of the data (not the complete size of the element)
47
-       */
48
-       void SetSize(uint64 aSize) {SetSize_(aSize);}
49
+    /*!
50
+      \brief Set the size of the data (not the complete size of the element)
51
+    */
52
+    void SetSize(uint64 aSize) {SetSize_(aSize);}
53
 
54
-       /*!
55
-           \note overwrite to write fake data 
56
-       */
57
-       filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
58
+    /*!
59
+      \note overwrite to write fake data
60
+    */
61
+    filepos_t RenderData(IOCallback & output, bool bForceRender, bool bWithDefault = false);
62
 
63
-       /*!
64
-           \brief Replace the void element content (written) with this one
65
-       */
66
-       uint64 ReplaceWith(EbmlElement & EltToReplaceWith, IOCallback & output, bool ComeBackAfterward = true, bool bWithDefault = false);
67
+    /*!
68
+      \brief Replace the void element content (written) with this one
69
+    */
70
+    uint64 ReplaceWith(EbmlElement & EltToReplaceWith, IOCallback & output, bool ComeBackAfterward = true, bool bWithDefault = false);
71
 
72
-       /*!
73
-           \brief Void the content of an element
74
-       */
75
-       uint64 Overwrite(const EbmlElement & EltToVoid, IOCallback & output, bool ComeBackAfterward = true, bool bWithDefault = false);
76
+    /*!
77
+      \brief Void the content of an element
78
+    */
79
+    uint64 Overwrite(const EbmlElement & EltToVoid, IOCallback & output, bool ComeBackAfterward = true, bool bWithDefault = false);
80
 
81
         EBML_CONCRETE_CLASS(EbmlVoid)
82
 };
83
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/IOCallback.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/IOCallback.h Changed
140
 
1
@@ -17,9 +17,9 @@
2
 **
3
 ** You should have received a copy of the GNU Lesser General Public
4
 ** License along with this library; if not, write to the Free Software
5
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
6
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
7
 **
8
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
9
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
10
 **
11
 ** Contact license@matroska.org if any conditions of this licensing are
12
 ** not clear to you.
13
@@ -27,8 +27,8 @@
14
 **********************************************************************/
15
 
16
 /*!
17
-   \file
18
-   \version \$Id: IOCallback.h 639 2004-07-09 20:59:14Z mosu $
19
+  \file
20
+  \version \$Id: IOCallback.h 639 2004-07-09 20:59:14Z mosu $
21
 */
22
 #ifndef MATROSKA_IOCALLBACK_H
23
 #define MATROSKA_IOCALLBACK_H
24
@@ -45,74 +45,74 @@
25
 
26
 enum seek_mode
27
 {
28
-   seek_beginning=SEEK_SET
29
-   ,seek_end=SEEK_END
30
-   ,seek_current=SEEK_CUR
31
+  seek_beginning=SEEK_SET
32
+  ,seek_end=SEEK_END
33
+  ,seek_current=SEEK_CUR
34
 };
35
 
36
 class EBML_DLL_API IOCallback
37
 {
38
 public:
39
-   virtual ~IOCallback(){}
40
+  virtual ~IOCallback(){}
41
 
42
-   // The read callback works like most other read functions. You specify the
43
-   // file, the buffer and the size and the function returns the bytes read.
44
-   // If an error occurs or the file pointer points to the end of the file 0 is returned.
45
-   // Users are encouraged to throw a descriptive exception, when an error occurs.
46
+  // The read callback works like most other read functions. You specify the
47
+  // file, the buffer and the size and the function returns the bytes read.
48
+  // If an error occurs or the file pointer points to the end of the file 0 is returned.
49
+  // Users are encouraged to throw a descriptive exception, when an error occurs.
50
 #ifndef EBML_NO_READ
51
-   virtual uint32 read(void*Buffer,size_t Size)=0;
52
+  virtual uint32 read(void*Buffer,size_t Size)=0;
53
 #endif
54
 
55
-   // Seek to the specified position. The mode can have either SEEK_SET, SEEK_CUR
56
-   // or SEEK_END. The callback should return true(1) if the seek operation succeeded
57
-   // or false (0), when the seek fails.
58
-   virtual void setFilePointer(int64 Offset,seek_mode Mode=seek_beginning)=0;
59
+  // Seek to the specified position. The mode can have either SEEK_SET, SEEK_CUR
60
+  // or SEEK_END. The callback should return true(1) if the seek operation succeeded
61
+  // or false (0), when the seek fails.
62
+  virtual void setFilePointer(int64 Offset,seek_mode Mode=seek_beginning)=0;
63
 
64
-   // This callback just works like its read pendant. It returns the number of bytes written.
65
-   virtual size_t write(const void*Buffer,size_t Size)=0;
66
+  // This callback just works like its read pendant. It returns the number of bytes written.
67
+  virtual size_t write(const void*Buffer,size_t Size)=0;
68
 
69
-   // Although the position is always positive, the return value of this callback is signed to
70
-   // easily allow negative values for returning errors. When an error occurs, the implementor
71
-   // should return -1 and the file pointer otherwise.
72
-   //
73
-   // If an error occurs, an exception should be thrown.
74
-   virtual uint64 getFilePointer()=0;
75
+  // Although the position is always positive, the return value of this callback is signed to
76
+  // easily allow negative values for returning errors. When an error occurs, the implementor
77
+  // should return -1 and the file pointer otherwise.
78
+  //
79
+  // If an error occurs, an exception should be thrown.
80
+  virtual uint64 getFilePointer()=0;
81
 
82
-   // The close callback flushes the file buffers to disk and closes the file. When using the stdio
83
-   // library, this is equivalent to calling fclose. When the close is not successful, an exception
84
-   // should be thrown.
85
-   virtual void close()=0;
86
+  // The close callback flushes the file buffers to disk and closes the file. When using the stdio
87
+  // library, this is equivalent to calling fclose. When the close is not successful, an exception
88
+  // should be thrown.
89
+  virtual void close()=0;
90
 
91
 
92
-   // The readFully is made virtual to allow derived classes to use another
93
-   // implementation for this method, which e.g. does not read any data
94
-   // unlike this does
95
+  // The readFully is made virtual to allow derived classes to use another
96
+  // implementation for this method, which e.g. does not read any data
97
+  // unlike this does
98
 #ifndef EBML_NO_READ
99
-   void readFully(void*Buffer,size_t Size);
100
+  void readFully(void*Buffer,size_t Size);
101
 
102
-   template<class STRUCT> void readStruct(STRUCT&Struct){readFully(&Struct,sizeof(Struct));}
103
+  template<class STRUCT> void readStruct(STRUCT&Struct){readFully(&Struct,sizeof(Struct));}
104
 #endif
105
 
106
-   void writeFully(const void*Buffer,size_t Size);
107
+  void writeFully(const void*Buffer,size_t Size);
108
 
109
-   template<class STRUCT> void writeStruct(const STRUCT&Struct){writeFully(&Struct,sizeof(Struct));}
110
+  template<class STRUCT> void writeStruct(const STRUCT&Struct){writeFully(&Struct,sizeof(Struct));}
111
 };
112
 
113
 /* cygwin incompatible
114
 template<class TRAITS> std::basic_ostream<char,TRAITS>&operator<<(std::basic_ostream<char,TRAITS>&Stream,seek_mode Mode)
115
 {
116
-   switch(Mode)
117
-   {
118
+  switch(Mode)
119
+  {
120
 #define x(y) case seek_##y: Stream<<"seek_" #y; break
121
-       x(beginning);
122
-       x(current);
123
-       x(end);
124
+    x(beginning);
125
+    x(current);
126
+    x(end);
127
 #undef x
128
-   default:
129
-       assert(false);
130
-   }
131
+  default:
132
+    assert(false);
133
+  }
134
 
135
-   return Stream;
136
+  return Stream;
137
 }
138
 */
139
 
140
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/MemIOCallback.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/MemIOCallback.h Changed
161
 
1
@@ -9,17 +9,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -27,9 +27,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: MemIOCallback.h 1298 2008-02-21 22:14:18Z mosu $
29
-   \author Jory Stone <jcsston @ toughguy.net>
30
+  \file
31
+  \version \$Id: MemIOCallback.h 1298 2008-02-21 22:14:18Z mosu $
32
+  \author Jory Stone <jcsston @ toughguy.net>
33
 */
34
 #ifndef LIBEBML_MEMIOCALLBACK_H
35
 #define LIBEBML_MEMIOCALLBACK_H
36
@@ -50,71 +50,71 @@
37
 class EBML_DLL_API MemIOCallback : public IOCallback
38
 {
39
 public:
40
-   MemIOCallback(uint64 DefaultSize = 128);
41
-   ~MemIOCallback();
42
+  MemIOCallback(uint64 DefaultSize = 128);
43
+  ~MemIOCallback();
44
 
45
-   /*!
46
-       Use this to copy some data to the Buffer from this classes data
47
-   */
48
-   uint32 read(void *Buffer, size_t Size);
49
+  /*!
50
+    Use this to copy some data to the Buffer from this classes data
51
+  */
52
+  uint32 read(void *Buffer, size_t Size);
53
 
54
-   /*!
55
-       Seek to the specified position. The mode can have either SEEK_SET, SEEK_CUR
56
-       or SEEK_END. The callback should return true(1) if the seek operation succeeded
57
-       or false (0), when the seek fails.
58
-   */
59
-   void setFilePointer(int64 Offset, seek_mode Mode=seek_beginning);
60
+  /*!
61
+    Seek to the specified position. The mode can have either SEEK_SET, SEEK_CUR
62
+    or SEEK_END. The callback should return true(1) if the seek operation succeeded
63
+    or false (0), when the seek fails.
64
+  */
65
+  void setFilePointer(int64 Offset, seek_mode Mode=seek_beginning);
66
 
67
-   /*!
68
-       This callback just works like its read pendant. It returns the number of bytes written.
69
-   */
70
-   size_t write(const void *Buffer, size_t Size);
71
+  /*!
72
+    This callback just works like its read pendant. It returns the number of bytes written.
73
+  */
74
+  size_t write(const void *Buffer, size_t Size);
75
 
76
-   /*!
77
-       Although the position is always positive, the return value of this callback is signed to
78
-       easily allow negative values for returning errors. When an error occurs, the implementor
79
-       should return -1 and the file pointer otherwise.
80
+  /*!
81
+    Although the position is always positive, the return value of this callback is signed to
82
+    easily allow negative values for returning errors. When an error occurs, the implementor
83
+    should return -1 and the file pointer otherwise.
84
 
85
-       If an error occurs, an exception should be thrown.
86
-   */
87
-   virtual uint64 getFilePointer() {return dataBufferPos;};
88
+    If an error occurs, an exception should be thrown.
89
+  */
90
+  virtual uint64 getFilePointer() {return dataBufferPos;};
91
 
92
-   /*!
93
-       The close callback flushes the file buffers to disk and closes the file. When using the stdio
94
-       library, this is equivalent to calling fclose. When the close is not successful, an exception
95
-       should be thrown.
96
-   */
97
-   void close() {};
98
+  /*!
99
+    The close callback flushes the file buffers to disk and closes the file. When using the stdio
100
+    library, this is equivalent to calling fclose. When the close is not successful, an exception
101
+    should be thrown.
102
+  */
103
+  void close() {};
104
 
105
-   binary *GetDataBuffer() const {return dataBuffer;};
106
-   uint64 GetDataBufferSize() {return dataBufferTotalSize;};
107
-   void SetDataBufferSize(uint64 newDataBufferSize) {dataBufferTotalSize = newDataBufferSize;};
108
-   /*!
109
-       Use this to write some data from another IOCallback
110
-   */
111
+  binary *GetDataBuffer() const {return dataBuffer;};
112
+  uint64 GetDataBufferSize() {return dataBufferTotalSize;};
113
+  void SetDataBufferSize(uint64 newDataBufferSize) {dataBufferTotalSize = newDataBufferSize;};
114
+  /*!
115
+    Use this to write some data from another IOCallback
116
+  */
117
 #ifndef EBML_NO_READ
118
-   uint32 write(IOCallback & IOToRead, size_t Size);
119
+  uint32 write(IOCallback & IOToRead, size_t Size);
120
 #endif
121
 
122
-   bool IsOk() { return mOk; };    
123
-   const ref::string &GetLastErrorStr() { return mLastErrorStr; };
124
+  bool IsOk() { return mOk; };
125
+  const ref::string &GetLastErrorStr() { return mLastErrorStr; };
126
 protected:
127
-   bool mOk;
128
-   buf::string mLastErrorStr;
129
+  bool mOk;
130
+  buf::string mLastErrorStr;
131
 
132
-   binary *dataBuffer;
133
-   /*!
134
-       Postion where we start 'writing' to the dataBuffer
135
-   */
136
-   uint64 dataBufferPos;
137
-   /*!
138
-       Size of the data in the dataBuffer
139
-   */
140
-   uint64 dataBufferTotalSize;
141
-   /*!
142
-       Size of the memory malloc()/realloc()
143
-   */
144
-   uint64 dataBufferMemorySize;
145
+  binary *dataBuffer;
146
+  /*!
147
+    Postion where we start 'writing' to the dataBuffer
148
+  */
149
+  uint64 dataBufferPos;
150
+  /*!
151
+    Size of the data in the dataBuffer
152
+  */
153
+  uint64 dataBufferTotalSize;
154
+  /*!
155
+    Size of the memory malloc()/realloc()
156
+  */
157
+  uint64 dataBufferMemorySize;
158
 };
159
 
160
 END_LIBEBML_NAMESPACE
161
makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/MemReadIOCallback.h Added
68
 
1
@@ -0,0 +1,66 @@
2
+/****************************************************************************
3
+** libebml : parse EBML files, see http://embl.sourceforge.net/
4
+**
5
+** <file/class description>
6
+**
7
+** Copyright (C) 2014 Moritz Bunkus.  All rights reserved.
8
+**
9
+** This library is free software; you can redistribute it and/or
10
+** modify it under the terms of the GNU Lesser General Public
11
+** License as published by the Free Software Foundation; either
12
+** version 2.1 of the License, or (at your option) any later version.
13
+**
14
+** This library is distributed in the hope that it will be useful,
15
+** but WITHOUT ANY WARRANTY; without even the implied warranty of
16
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17
+** Lesser General Public License for more details.
18
+**
19
+** You should have received a copy of the GNU Lesser General Public
20
+** License along with this library; if not, write to the Free Software
21
+** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
22
+**
23
+** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
24
+**
25
+** Contact license@matroska.org if any conditions of this licensing are
26
+** not clear to you.
27
+**
28
+**********************************************************************/
29
+
30
+/*!
31
+  \file
32
+  \author Moritz Bunkus <moritz@bunkus.org>
33
+*/
34
+#ifndef LIBEBML_MEMREADIOCALLBACK_H
35
+#define LIBEBML_MEMREADIOCALLBACK_H
36
+
37
+#include "IOCallback.h"
38
+
39
+START_LIBEBML_NAMESPACE
40
+
41
+class EBML_DLL_API EbmlBinary;
42
+
43
+class EBML_DLL_API MemReadIOCallback : public IOCallback {
44
+protected:
45
+  uint8 const *mStart, *mEnd, *mPtr;
46
+
47
+public:
48
+  MemReadIOCallback(void const *Ptr, size_t Size);
49
+  MemReadIOCallback(EbmlBinary const &Binary);
50
+  MemReadIOCallback(MemReadIOCallback const &Mem);
51
+  virtual ~MemReadIOCallback();
52
+
53
+  uint32 read(void *Buffer, size_t Size);
54
+  void setFilePointer(int64 Offset, seek_mode Mode = seek_beginning);
55
+  size_t write(void const *, size_t) { return 0; }
56
+  virtual uint64 getFilePointer() { return mPtr - mStart; }
57
+  void close() {}
58
+  binary const *GetDataBuffer() const { return mPtr; }
59
+  uint64 GetDataBufferSize() const { return mEnd - mStart; }
60
+
61
+protected:
62
+  void Init(void const *Ptr, size_t Size);
63
+};
64
+
65
+END_LIBEBML_NAMESPACE
66
+
67
+#endif // LIBEBML_MEMREADIOCALLBACK_H
68
makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/SafeReadIOCallback.h Added
93
 
1
@@ -0,0 +1,91 @@
2
+/****************************************************************************
3
+** libebml : parse EBML files, see http://embl.sourceforge.net/
4
+**
5
+** <file/class description>
6
+**
7
+** Copyright (C) 2002-2014 Moritz Bunkus.  All rights reserved.
8
+**
9
+** This file is part of libebml.
10
+**
11
+** This library is free software; you can redistribute it and/or
12
+** modify it under the terms of the GNU Lesser General Public
13
+** License as published by the Free Software Foundation; either
14
+** version 2.1 of the License, or (at your option) any later version.
15
+**
16
+** This library is distributed in the hope that it will be useful,
17
+** but WITHOUT ANY WARRANTY; without even the implied warranty of
18
+** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
19
+** Lesser General Public License for more details.
20
+**
21
+** You should have received a copy of the GNU Lesser General Public
22
+** License along with this library; if not, write to the Free Software
23
+** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
24
+**
25
+** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
26
+**
27
+** Contact license@matroska.org if any conditions of this licensing are
28
+** not clear to you.
29
+**
30
+**********************************************************************/
31
+
32
+/*!
33
+  \file
34
+  \version \$Id$
35
+  \author Moritz Bunkus <moritz@bunkus.org>
36
+*/
37
+#ifndef LIBEBML_SAFEREADIOCALLBACK_H
38
+#define LIBEBML_SAFEREADIOCALLBACK_H
39
+
40
+#include "EbmlTypes.h"
41
+
42
+START_LIBEBML_NAMESPACE
43
+
44
+class EBML_DLL_API IOCallback;
45
+class EBML_DLL_API EbmlBinary;
46
+
47
+class EBML_DLL_API SafeReadIOCallback {
48
+public:
49
+  class EndOfStreamX {
50
+  public:
51
+    size_t mMissingBytes;
52
+    EndOfStreamX(std::size_t MissingBytes);
53
+  };
54
+
55
+private:
56
+  IOCallback *mIO;
57
+  bool mDeleteIO;
58
+  size_t mSize;
59
+
60
+public:
61
+  SafeReadIOCallback(IOCallback *IO, bool DeleteIO);
62
+  SafeReadIOCallback(void const *Mem, size_t Size);
63
+  SafeReadIOCallback(EbmlBinary const &Binary);
64
+  ~SafeReadIOCallback();
65
+
66
+  size_t GetPosition() const;
67
+  size_t GetSize() const;
68
+  size_t GetRemainingBytes() const;
69
+  bool IsEmpty() const;
70
+
71
+  uint8  GetUInt8();
72
+  uint64 GetUIntBE(size_t NumBytes);
73
+  uint16 GetUInt16BE();
74
+  uint32 GetUInt24BE();
75
+  uint32 GetUInt32BE();
76
+  uint64 GetUInt64BE();
77
+
78
+  void Read(void *Dst, size_t Count);
79
+
80
+  void Skip(size_t Count);
81
+  void Seek(size_t Position);
82
+
83
+private:
84
+  SafeReadIOCallback(SafeReadIOCallback const &) { }
85
+
86
+protected:
87
+  void Init(IOCallback *IO, bool DeleteIO);
88
+};
89
+
90
+END_LIBEBML_NAMESPACE
91
+
92
+#endif  // LIBEBML_SAFEREADIOCALLBACK_H
93
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/StdIOCallback.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/StdIOCallback.h Changed
115
 
1
@@ -9,17 +9,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -27,8 +27,8 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: StdIOCallback.h 1090 2005-03-16 12:47:59Z robux4 $
29
+  \file
30
+  \version \$Id: StdIOCallback.h 1090 2005-03-16 12:47:59Z robux4 $
31
 */
32
 #ifndef LIBEBML_STDIOCALLBACK_H
33
 #define LIBEBML_STDIOCALLBACK_H
34
@@ -51,49 +51,49 @@
35
 {
36
 // Variablen...
37
 private:
38
-   int Error;
39
+  int Error;
40
 
41
 // Methoden...
42
 public:
43
-   CRTError(int Error,const std::string&Description);
44
-   CRTError(const std::string&Description,int Error=errno);
45
+  CRTError(int Error,const std::string&Description);
46
+  CRTError(const std::string&Description,int Error=errno);
47
 
48
-   int getError()const throw(){return Error;}
49
+  int getError()const throw(){return Error;}
50
 };
51
 
52
 // This class is currently private to the library, so there's no MATROSKA_EXPORT.
53
 class EBML_DLL_API StdIOCallback:public IOCallback
54
 {
55
     private:
56
-       FILE*File;
57
-       uint64 mCurrentPosition;
58
+      FILE*File;
59
+    uint64 mCurrentPosition;
60
 
61
     public:
62
-// StdIOCallback(const char*Path,const char*Mode);
63
-   StdIOCallback(const char*Path, const open_mode Mode);
64
-   virtual ~StdIOCallback()throw();
65
-
66
-   virtual uint32 read(void*Buffer,size_t Size);
67
-
68
-   // Seek to the specified position. The mode can have either SEEK_SET, SEEK_CUR
69
-   // or SEEK_END. The callback should return true(1) if the seek operation succeeded
70
-   // or false (0), when the seek fails.
71
-   virtual void setFilePointer(int64 Offset,seek_mode Mode=seek_beginning);
72
-
73
-   // This callback just works like its read pendant. It returns the number of bytes written.
74
-   virtual size_t write(const void*Buffer,size_t Size);
75
-
76
-   // Although the position is always positive, the return value of this callback is signed to
77
-   // easily allow negative values for returning errors. When an error occurs, the implementor
78
-   // should return -1 and the file pointer otherwise.
79
-   //
80
-   // If an error occurs, an exception should be thrown.
81
-   virtual uint64 getFilePointer();
82
-
83
-   // The close callback flushes the file buffers to disk and closes the file. When using the stdio
84
-   // library, this is equivalent to calling fclose. When the close is not successful, an exception
85
-   // should be thrown.
86
-   virtual void close();
87
+//  StdIOCallback(const char*Path,const char*Mode);
88
+  StdIOCallback(const char*Path, const open_mode Mode);
89
+  virtual ~StdIOCallback()throw();
90
+
91
+  virtual uint32 read(void*Buffer,size_t Size);
92
+
93
+  // Seek to the specified position. The mode can have either SEEK_SET, SEEK_CUR
94
+  // or SEEK_END. The callback should return true(1) if the seek operation succeeded
95
+  // or false (0), when the seek fails.
96
+  virtual void setFilePointer(int64 Offset,seek_mode Mode=seek_beginning);
97
+
98
+  // This callback just works like its read pendant. It returns the number of bytes written.
99
+  virtual size_t write(const void*Buffer,size_t Size);
100
+
101
+  // Although the position is always positive, the return value of this callback is signed to
102
+  // easily allow negative values for returning errors. When an error occurs, the implementor
103
+  // should return -1 and the file pointer otherwise.
104
+  //
105
+  // If an error occurs, an exception should be thrown.
106
+  virtual uint64 getFilePointer();
107
+
108
+  // The close callback flushes the file buffers to disk and closes the file. When using the stdio
109
+  // library, this is equivalent to calling fclose. When the close is not successful, an exception
110
+  // should be thrown.
111
+  virtual void close();
112
 };
113
 
114
 END_LIBEBML_NAMESPACE
115
makemkv-oss-1.9.5.tar.xz/libebml/inc/ebml/c/libebml_t.h -> makemkv-oss-1.10.2.tar.xz/libebml/inc/ebml/c/libebml_t.h Changed
31
 
1
@@ -19,9 +19,9 @@
2
 **
3
 ** You should have received a copy of the GNU Lesser General Public
4
 ** License along with this library; if not, write to the Free Software
5
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
6
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
7
 **
8
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
9
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
10
 **
11
 ** Contact license@matroska.org if any conditions of this licensing are
12
 ** not clear to you.
13
@@ -50,7 +50,7 @@
14
 
15
 // Changed char is unsigned now (signedness was causing trouble in endil)
16
 #if defined(_WIN32)
17
-# if !defined(__GNUC__)        // Microsoft Visual C++
18
+# if !defined(__GNUC__)    // Microsoft Visual C++
19
     typedef signed __int64 int64;
20
     typedef signed __int32 int32;
21
     typedef signed __int16 int16;
22
@@ -74,7 +74,7 @@
23
 # endif // __GNUC__
24
 #elif defined(__BEOS__)
25
 #include <SupportDefs.h>
26
-#elif defined(DJGPP)               /* SL : DJGPP doesn't support POSIX types ???? */
27
+#elif defined(DJGPP)        /* SL : DJGPP doesn't support POSIX types ???? */
28
     typedef signed long long int64;
29
     typedef signed long int32;
30
     typedef signed short int16;
31
makemkv-oss-1.9.5.tar.xz/libebml/src/Debug.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/Debug.cpp Changed
201
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,10 +29,10 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: Debug.cpp 1268 2007-01-19 10:15:08Z robux4 $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Moritz Bunkus <moritz @ bunkus.org>
31
+  \file
32
+  \version \$Id: Debug.cpp 1268 2007-01-19 10:15:08Z robux4 $
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Moritz Bunkus <moritz @ bunkus.org>
35
 */
36
 #include <stdio.h>
37
 
38
@@ -56,180 +56,183 @@
39
 //////////////////////////////////////////////////////////////////////
40
 
41
 ADbg::ADbg(int level)
42
-:my_level(level)
43
-,my_time_included(false)
44
-,my_use_file(false)
45
-,my_debug_output(true)
46
-,hFile(NULL)
47
+  :my_level(level)
48
+  ,my_time_included(false)
49
+  ,my_use_file(false)
50
+  ,my_debug_output(true)
51
+  ,hFile(NULL)
52
 {
53
-   prefix[0] = '\0';
54
-   OutPut(-1,"ADbg Creation at debug level = %d (0x%08X)",my_level,this);
55
+  prefix[0] = '\0';
56
+  OutPut(-1,"ADbg Creation at debug level = %d (0x%08X)",my_level,this);
57
 }
58
 
59
 ADbg::~ADbg()
60
 {
61
-   unsetDebugFile();
62
-   OutPut(-1,"ADbg Deletion (0x%08X)",this);
63
+  unsetDebugFile();
64
+  OutPut(-1,"ADbg Deletion (0x%08X)",this);
65
 }
66
 
67
 inline int ADbg::_OutPut(const char * format,va_list params) const
68
 {
69
-   int result;
70
+  int result;
71
 
72
-   char tst[1000];
73
-   char myformat[256];
74
+  char tst[1000];
75
+  char myformat[256];
76
 
77
 #ifdef WIN32
78
-   if (my_time_included) {
79
-       SYSTEMTIME time;
80
-       GetSystemTime(&time);
81
-       if (prefix[0] == '\0')
82
-           wsprintfA(myformat,"%04d/%02d/%02d %02d:%02d:%02d.%03d UTC : %s\r\n",
83
-                           time.wYear,
84
-                           time.wMonth,
85
-                           time.wDay,
86
-                           time.wHour,
87
-                           time.wMinute,
88
-                           time.wSecond,
89
-                           time.wMilliseconds,
90
-                           format);
91
-       else
92
-           wsprintfA(myformat,"%04d/%02d/%02d %02d:%02d:%02d.%03d UTC : %s - %s\r\n",
93
-                           time.wYear,
94
-                           time.wMonth,
95
-                           time.wDay,
96
-                           time.wHour,
97
-                           time.wMinute,
98
-                           time.wSecond,
99
-                           time.wMilliseconds,
100
-                           prefix,
101
-                           format);
102
-   } else {
103
-       if (prefix[0] == '\0')
104
-           wsprintfA( myformat, "%s\r\n", format);
105
-       else
106
-           wsprintfA( myformat, "%s - %s\r\n", prefix, format);
107
-   }
108
-   result = vsprintf(tst,myformat,params);
109
-   
110
-   if (my_debug_output)
111
-       OutputDebugStringA(tst);
112
-
113
-   if (my_use_file && (hFile != NULL)) {
114
-       SetFilePointer( hFile, 0, 0, FILE_END );
115
-       DWORD written;
116
-       WriteFile( hFile, tst, lstrlenA(tst), &written, NULL );
117
-   }
118
+  if (my_time_included) {
119
+    SYSTEMTIME time;
120
+    GetSystemTime(&time);
121
+    if (prefix[0] == '\0')
122
+      wsprintfA(myformat,"%04d/%02d/%02d %02d:%02d:%02d.%03d UTC : %s\r\n",
123
+                time.wYear,
124
+                time.wMonth,
125
+                time.wDay,
126
+                time.wHour,
127
+                time.wMinute,
128
+                time.wSecond,
129
+                time.wMilliseconds,
130
+                format);
131
+    else
132
+      wsprintfA(myformat,"%04d/%02d/%02d %02d:%02d:%02d.%03d UTC : %s - %s\r\n",
133
+                time.wYear,
134
+                time.wMonth,
135
+                time.wDay,
136
+                time.wHour,
137
+                time.wMinute,
138
+                time.wSecond,
139
+                time.wMilliseconds,
140
+                prefix,
141
+                format);
142
+  } else {
143
+    if (prefix[0] == '\0')
144
+      wsprintfA( myformat, "%s\r\n", format);
145
+    else
146
+      wsprintfA( myformat, "%s - %s\r\n", prefix, format);
147
+  }
148
+  result = vsprintf(tst,myformat,params);
149
+
150
+  if (my_debug_output)
151
+    OutputDebugStringA(tst);
152
+
153
+  if (my_use_file && (hFile != NULL)) {
154
+    SetFilePointer( hFile, 0, 0, FILE_END );
155
+    DWORD written;
156
+    WriteFile( hFile, tst, lstrlenA(tst), &written, NULL );
157
+  }
158
 #else
159
-   if (my_time_included) {
160
-       time_t nowSecs;
161
-       struct tm *now;
162
-       struct timeval tv;
163
-       
164
-       nowSecs = time(NULL);
165
-       gettimeofday(&tv, NULL);
166
-       now = gmtime(&nowSecs);
167
-       if (prefix[0] == '\0')
168
-           sprintf(myformat,"%04d/%02d/%02d %02d:%02d:%02ld.%03ld UTC : %s\r\n",
169
-                   now->tm_year, now->tm_mon, now->tm_mday,
170
-                   now->tm_hour, now->tm_min, tv.tv_sec,
171
-                   (long)tv.tv_usec / 1000, format);
172
-       else
173
-           sprintf(myformat,"%04d/%02d/%02d %02d:%02d:%02ld.%03ld UTC : %s - %s\r\n",
174
-                   now->tm_year, now->tm_mon, now->tm_mday,
175
-                   now->tm_hour, now->tm_min, tv.tv_sec,
176
-                   (long)tv.tv_usec / 1000, prefix, format);
177
-       
178
-   } else {
179
-       if (prefix[0] == '\0')
180
-           sprintf( myformat, "%s\r\n", format);
181
-       else
182
-           sprintf( myformat, "%s - %s\r\n", prefix, format);
183
-   }
184
-
185
-   result = vsprintf(tst,myformat,params);
186
-   
187
-   if (my_debug_output)
188
-       fputs(tst, stderr);
189
-
190
-   if (my_use_file && (hFile != NULL))
191
-       fputs(tst, hFile);
192
+  if (my_time_included) {
193
+    time_t nowSecs;
194
+    struct tm *now;
195
+    struct timeval tv;
196
+
197
+    nowSecs = time(NULL);
198
+    gettimeofday(&tv, NULL);
199
+    now = gmtime(&nowSecs);
200
+    if (prefix[0] == '\0')
201
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlBinary.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlBinary.cpp Changed
136
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,10 +29,10 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Julien Coloos   <suiryc @ users.sf.net>
31
+  \file
32
+  \version \$Id$
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Julien Coloos  <suiryc @ users.sf.net>
35
 */
36
 #include <lgpl/stdstring.h>
37
 #include <lgpl/cassert>
38
@@ -43,24 +43,24 @@
39
 START_LIBEBML_NAMESPACE
40
 
41
 EbmlBinary::EbmlBinary()
42
- :EbmlElement(0, false), Data(NULL)
43
+  :EbmlElement(0, false), Data(NULL)
44
 {}
45
 
46
 EbmlBinary::EbmlBinary(const EbmlBinary & ElementToClone)
47
- :EbmlElement(ElementToClone)
48
+  :EbmlElement(ElementToClone)
49
 {
50
-   if (ElementToClone.Data == NULL)
51
-       Data = NULL;
52
-   else {
53
-       Data = (binary *)malloc(GetSize() * sizeof(binary));
54
-       assert(Data != NULL);
55
-       memcpy(Data, ElementToClone.Data, GetSize());
56
-   }
57
+  if (ElementToClone.Data == NULL)
58
+    Data = NULL;
59
+  else {
60
+    Data = (binary *)malloc(GetSize() * sizeof(binary));
61
+    assert(Data != NULL);
62
+    memcpy(Data, ElementToClone.Data, GetSize());
63
+  }
64
 }
65
 
66
 EbmlBinary::~EbmlBinary(void) {
67
-   if(Data)
68
-       free(Data);
69
+  if(Data)
70
+    free(Data);
71
 }
72
 
73
 EbmlBinary::operator const binary &() const {return *Data;}
74
@@ -68,42 +68,41 @@
75
 
76
 filepos_t EbmlBinary::RenderData(IOCallback & output, bool /* bForceRender */, bool /* bWithDefault */)
77
 {
78
-   output.writeFully(Data,GetSize());
79
+  output.writeFully(Data,GetSize());
80
 
81
-   return GetSize();
82
+  return GetSize();
83
 }
84
-   
85
+
86
 /*!
87
-   \note no Default binary value handled
88
+  \note no Default binary value handled
89
 */
90
 uint64 EbmlBinary::UpdateSize(bool /* bWithDefault */, bool /* bForceRender */)
91
 {
92
-   return GetSize();
93
+  return GetSize();
94
 }
95
 
96
 #ifndef EBML_NO_READ
97
 filepos_t EbmlBinary::ReadData(IOCallback & input, ScopeMode ReadFully)
98
 {
99
-   if (Data != NULL)
100
-       free(Data);
101
-   
102
-    if (ReadFully == SCOPE_NO_DATA || !GetSize())
103
-   {
104
-       Data = NULL;
105
-       return GetSize();
106
-   }
107
-
108
-   Data = (binary *)malloc(GetSize());
109
-    if (Data == NULL)
110
-       throw CRTError(std::string("Error allocating data"));
111
-   SetValueIsSet();
112
-   return input.read(Data, GetSize());
113
+  if (Data != NULL)
114
+    free(Data);
115
+
116
+  if (ReadFully == SCOPE_NO_DATA || !GetSize()) {
117
+    Data = NULL;
118
+    return GetSize();
119
+  }
120
+
121
+  Data = (binary *)malloc(GetSize());
122
+  if (Data == NULL)
123
+    throw CRTError(std::string("Error allocating data"));
124
+  SetValueIsSet();
125
+  return input.read(Data, GetSize());
126
 }
127
 #endif
128
 
129
 bool EbmlBinary::operator==(const EbmlBinary & ElementToCompare) const
130
 {
131
-   return ((GetSize() == ElementToCompare.GetSize()) && !memcmp(Data, ElementToCompare.Data, GetSize()));
132
+  return ((GetSize() == ElementToCompare.GetSize()) && !memcmp(Data, ElementToCompare.Data, GetSize()));
133
 }
134
 
135
 END_LIBEBML_NAMESPACE
136
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlContexts.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlContexts.cpp Changed
56
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlContexts.cpp 639 2004-07-09 20:59:14Z mosu $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id: EbmlContexts.cpp 639 2004-07-09 20:59:14Z mosu $
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #include "ebml/EbmlContexts.h"
35
 #include "ebml/EbmlCrc32.h"
36
@@ -41,8 +41,8 @@
37
 
38
 static const EbmlSemantic EbmlGlobal_ContextList[2] =
39
 {
40
-   EbmlSemantic(false, false, EBML_INFO(EbmlCrc32)),   ///< EbmlCrc32
41
-   EbmlSemantic(false, false, EBML_INFO(EbmlVoid)),    ///< EbmlVoid
42
+  EbmlSemantic(false, false, EBML_INFO(EbmlCrc32)),   ///< EbmlCrc32
43
+  EbmlSemantic(false, false, EBML_INFO(EbmlVoid)),    ///< EbmlVoid
44
 };
45
 
46
 const EbmlSemanticContext Context_EbmlGlobal = EbmlSemanticContext(0, NULL, NULL, *GetEbmlGlobal_Context, NULL);
47
@@ -51,7 +51,7 @@
48
 
49
 const EbmlSemanticContext & GetEbmlGlobal_Context()
50
 {
51
-   return EbmlGlobal_Context;
52
+  return EbmlGlobal_Context;
53
 }
54
 
55
 END_LIBEBML_NAMESPACE
56
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlCrc32.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlCrc32.cpp Changed
201
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,10 +29,10 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlCrc32.cpp 1155 2005-05-06 11:43:38Z robux4 $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Jory Stone       <jcsston @ toughguy.net>
31
+  \file
32
+  \version \$Id: EbmlCrc32.cpp 1155 2005-05-06 11:43:38Z robux4 $
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Jory Stone       <jcsston @ toughguy.net>
35
 */
36
 #include "ebml/EbmlCrc32.h"
37
 #include "ebml/EbmlContexts.h"
38
@@ -54,302 +54,299 @@
39
 
40
 const uint32 EbmlCrc32::m_tab[] = {
41
 #ifdef WORDS_BIGENDIAN
42
-   0x00000000L, 0x96300777L, 0x2c610eeeL, 0xba510999L, 0x19c46d07L,
43
-   0x8ff46a70L, 0x35a563e9L, 0xa395649eL, 0x3288db0eL, 0xa4b8dc79L,
44
-   0x1ee9d5e0L, 0x88d9d297L, 0x2b4cb609L, 0xbd7cb17eL, 0x072db8e7L,
45
-   0x911dbf90L, 0x6410b71dL, 0xf220b06aL, 0x4871b9f3L, 0xde41be84L,
46
-   0x7dd4da1aL, 0xebe4dd6dL, 0x51b5d4f4L, 0xc785d383L, 0x56986c13L,
47
-   0xc0a86b64L, 0x7af962fdL, 0xecc9658aL, 0x4f5c0114L, 0xd96c0663L,
48
-   0x633d0ffaL, 0xf50d088dL, 0xc8206e3bL, 0x5e10694cL, 0xe44160d5L,
49
-   0x727167a2L, 0xd1e4033cL, 0x47d4044bL, 0xfd850dd2L, 0x6bb50aa5L,
50
-   0xfaa8b535L, 0x6c98b242L, 0xd6c9bbdbL, 0x40f9bcacL, 0xe36cd832L,
51
-   0x755cdf45L, 0xcf0dd6dcL, 0x593dd1abL, 0xac30d926L, 0x3a00de51L,
52
-   0x8051d7c8L, 0x1661d0bfL, 0xb5f4b421L, 0x23c4b356L, 0x9995bacfL,
53
-   0x0fa5bdb8L, 0x9eb80228L, 0x0888055fL, 0xb2d90cc6L, 0x24e90bb1L,
54
-   0x877c6f2fL, 0x114c6858L, 0xab1d61c1L, 0x3d2d66b6L, 0x9041dc76L,
55
-   0x0671db01L, 0xbc20d298L, 0x2a10d5efL, 0x8985b171L, 0x1fb5b606L,
56
-   0xa5e4bf9fL, 0x33d4b8e8L, 0xa2c90778L, 0x34f9000fL, 0x8ea80996L,
57
-   0x18980ee1L, 0xbb0d6a7fL, 0x2d3d6d08L, 0x976c6491L, 0x015c63e6L,
58
-   0xf4516b6bL, 0x62616c1cL, 0xd8306585L, 0x4e0062f2L, 0xed95066cL,
59
-   0x7ba5011bL, 0xc1f40882L, 0x57c40ff5L, 0xc6d9b065L, 0x50e9b712L,
60
-   0xeab8be8bL, 0x7c88b9fcL, 0xdf1ddd62L, 0x492dda15L, 0xf37cd38cL,
61
-   0x654cd4fbL, 0x5861b24dL, 0xce51b53aL, 0x7400bca3L, 0xe230bbd4L,
62
-   0x41a5df4aL, 0xd795d83dL, 0x6dc4d1a4L, 0xfbf4d6d3L, 0x6ae96943L,
63
-   0xfcd96e34L, 0x468867adL, 0xd0b860daL, 0x732d0444L, 0xe51d0333L,
64
-   0x5f4c0aaaL, 0xc97c0dddL, 0x3c710550L, 0xaa410227L, 0x10100bbeL,
65
-   0x86200cc9L, 0x25b56857L, 0xb3856f20L, 0x09d466b9L, 0x9fe461ceL,
66
-   0x0ef9de5eL, 0x98c9d929L, 0x2298d0b0L, 0xb4a8d7c7L, 0x173db359L,
67
-   0x810db42eL, 0x3b5cbdb7L, 0xad6cbac0L, 0x2083b8edL, 0xb6b3bf9aL,
68
-   0x0ce2b603L, 0x9ad2b174L, 0x3947d5eaL, 0xaf77d29dL, 0x1526db04L,
69
-   0x8316dc73L, 0x120b63e3L, 0x843b6494L, 0x3e6a6d0dL, 0xa85a6a7aL,
70
-   0x0bcf0ee4L, 0x9dff0993L, 0x27ae000aL, 0xb19e077dL, 0x44930ff0L,
71
-   0xd2a30887L, 0x68f2011eL, 0xfec20669L, 0x5d5762f7L, 0xcb676580L,
72
-   0x71366c19L, 0xe7066b6eL, 0x761bd4feL, 0xe02bd389L, 0x5a7ada10L,
73
-   0xcc4add67L, 0x6fdfb9f9L, 0xf9efbe8eL, 0x43beb717L, 0xd58eb060L,
74
-   0xe8a3d6d6L, 0x7e93d1a1L, 0xc4c2d838L, 0x52f2df4fL, 0xf167bbd1L,
75
-   0x6757bca6L, 0xdd06b53fL, 0x4b36b248L, 0xda2b0dd8L, 0x4c1b0aafL,
76
-   0xf64a0336L, 0x607a0441L, 0xc3ef60dfL, 0x55df67a8L, 0xef8e6e31L,
77
-   0x79be6946L, 0x8cb361cbL, 0x1a8366bcL, 0xa0d26f25L, 0x36e26852L,
78
-   0x95770cccL, 0x03470bbbL, 0xb9160222L, 0x2f260555L, 0xbe3bbac5L,
79
-   0x280bbdb2L, 0x925ab42bL, 0x046ab35cL, 0xa7ffd7c2L, 0x31cfd0b5L,
80
-   0x8b9ed92cL, 0x1daede5bL, 0xb0c2649bL, 0x26f263ecL, 0x9ca36a75L,
81
-   0x0a936d02L, 0xa906099cL, 0x3f360eebL, 0x85670772L, 0x13570005L,
82
-   0x824abf95L, 0x147ab8e2L, 0xae2bb17bL, 0x381bb60cL, 0x9b8ed292L,
83
-   0x0dbed5e5L, 0xb7efdc7cL, 0x21dfdb0bL, 0xd4d2d386L, 0x42e2d4f1L,
84
-   0xf8b3dd68L, 0x6e83da1fL, 0xcd16be81L, 0x5b26b9f6L, 0xe177b06fL,
85
-   0x7747b718L, 0xe65a0888L, 0x706a0fffL, 0xca3b0666L, 0x5c0b0111L,
86
-   0xff9e658fL, 0x69ae62f8L, 0xd3ff6b61L, 0x45cf6c16L, 0x78e20aa0L,
87
-   0xeed20dd7L, 0x5483044eL, 0xc2b30339L, 0x612667a7L, 0xf71660d0L,
88
-   0x4d476949L, 0xdb776e3eL, 0x4a6ad1aeL, 0xdc5ad6d9L, 0x660bdf40L,
89
-   0xf03bd837L, 0x53aebca9L, 0xc59ebbdeL, 0x7fcfb247L, 0xe9ffb530L,
90
-   0x1cf2bdbdL, 0x8ac2bacaL, 0x3093b353L, 0xa6a3b424L, 0x0536d0baL,
91
-   0x9306d7cdL, 0x2957de54L, 0xbf67d923L, 0x2e7a66b3L, 0xb84a61c4L,
92
-   0x021b685dL, 0x942b6f2aL, 0x37be0bb4L, 0xa18e0cc3L, 0x1bdf055aL,
93
-   0x8def022dL
94
+  0x00000000L, 0x96300777L, 0x2c610eeeL, 0xba510999L, 0x19c46d07L,
95
+  0x8ff46a70L, 0x35a563e9L, 0xa395649eL, 0x3288db0eL, 0xa4b8dc79L,
96
+  0x1ee9d5e0L, 0x88d9d297L, 0x2b4cb609L, 0xbd7cb17eL, 0x072db8e7L,
97
+  0x911dbf90L, 0x6410b71dL, 0xf220b06aL, 0x4871b9f3L, 0xde41be84L,
98
+  0x7dd4da1aL, 0xebe4dd6dL, 0x51b5d4f4L, 0xc785d383L, 0x56986c13L,
99
+  0xc0a86b64L, 0x7af962fdL, 0xecc9658aL, 0x4f5c0114L, 0xd96c0663L,
100
+  0x633d0ffaL, 0xf50d088dL, 0xc8206e3bL, 0x5e10694cL, 0xe44160d5L,
101
+  0x727167a2L, 0xd1e4033cL, 0x47d4044bL, 0xfd850dd2L, 0x6bb50aa5L,
102
+  0xfaa8b535L, 0x6c98b242L, 0xd6c9bbdbL, 0x40f9bcacL, 0xe36cd832L,
103
+  0x755cdf45L, 0xcf0dd6dcL, 0x593dd1abL, 0xac30d926L, 0x3a00de51L,
104
+  0x8051d7c8L, 0x1661d0bfL, 0xb5f4b421L, 0x23c4b356L, 0x9995bacfL,
105
+  0x0fa5bdb8L, 0x9eb80228L, 0x0888055fL, 0xb2d90cc6L, 0x24e90bb1L,
106
+  0x877c6f2fL, 0x114c6858L, 0xab1d61c1L, 0x3d2d66b6L, 0x9041dc76L,
107
+  0x0671db01L, 0xbc20d298L, 0x2a10d5efL, 0x8985b171L, 0x1fb5b606L,
108
+  0xa5e4bf9fL, 0x33d4b8e8L, 0xa2c90778L, 0x34f9000fL, 0x8ea80996L,
109
+  0x18980ee1L, 0xbb0d6a7fL, 0x2d3d6d08L, 0x976c6491L, 0x015c63e6L,
110
+  0xf4516b6bL, 0x62616c1cL, 0xd8306585L, 0x4e0062f2L, 0xed95066cL,
111
+  0x7ba5011bL, 0xc1f40882L, 0x57c40ff5L, 0xc6d9b065L, 0x50e9b712L,
112
+  0xeab8be8bL, 0x7c88b9fcL, 0xdf1ddd62L, 0x492dda15L, 0xf37cd38cL,
113
+  0x654cd4fbL, 0x5861b24dL, 0xce51b53aL, 0x7400bca3L, 0xe230bbd4L,
114
+  0x41a5df4aL, 0xd795d83dL, 0x6dc4d1a4L, 0xfbf4d6d3L, 0x6ae96943L,
115
+  0xfcd96e34L, 0x468867adL, 0xd0b860daL, 0x732d0444L, 0xe51d0333L,
116
+  0x5f4c0aaaL, 0xc97c0dddL, 0x3c710550L, 0xaa410227L, 0x10100bbeL,
117
+  0x86200cc9L, 0x25b56857L, 0xb3856f20L, 0x09d466b9L, 0x9fe461ceL,
118
+  0x0ef9de5eL, 0x98c9d929L, 0x2298d0b0L, 0xb4a8d7c7L, 0x173db359L,
119
+  0x810db42eL, 0x3b5cbdb7L, 0xad6cbac0L, 0x2083b8edL, 0xb6b3bf9aL,
120
+  0x0ce2b603L, 0x9ad2b174L, 0x3947d5eaL, 0xaf77d29dL, 0x1526db04L,
121
+  0x8316dc73L, 0x120b63e3L, 0x843b6494L, 0x3e6a6d0dL, 0xa85a6a7aL,
122
+  0x0bcf0ee4L, 0x9dff0993L, 0x27ae000aL, 0xb19e077dL, 0x44930ff0L,
123
+  0xd2a30887L, 0x68f2011eL, 0xfec20669L, 0x5d5762f7L, 0xcb676580L,
124
+  0x71366c19L, 0xe7066b6eL, 0x761bd4feL, 0xe02bd389L, 0x5a7ada10L,
125
+  0xcc4add67L, 0x6fdfb9f9L, 0xf9efbe8eL, 0x43beb717L, 0xd58eb060L,
126
+  0xe8a3d6d6L, 0x7e93d1a1L, 0xc4c2d838L, 0x52f2df4fL, 0xf167bbd1L,
127
+  0x6757bca6L, 0xdd06b53fL, 0x4b36b248L, 0xda2b0dd8L, 0x4c1b0aafL,
128
+  0xf64a0336L, 0x607a0441L, 0xc3ef60dfL, 0x55df67a8L, 0xef8e6e31L,
129
+  0x79be6946L, 0x8cb361cbL, 0x1a8366bcL, 0xa0d26f25L, 0x36e26852L,
130
+  0x95770cccL, 0x03470bbbL, 0xb9160222L, 0x2f260555L, 0xbe3bbac5L,
131
+  0x280bbdb2L, 0x925ab42bL, 0x046ab35cL, 0xa7ffd7c2L, 0x31cfd0b5L,
132
+  0x8b9ed92cL, 0x1daede5bL, 0xb0c2649bL, 0x26f263ecL, 0x9ca36a75L,
133
+  0x0a936d02L, 0xa906099cL, 0x3f360eebL, 0x85670772L, 0x13570005L,
134
+  0x824abf95L, 0x147ab8e2L, 0xae2bb17bL, 0x381bb60cL, 0x9b8ed292L,
135
+  0x0dbed5e5L, 0xb7efdc7cL, 0x21dfdb0bL, 0xd4d2d386L, 0x42e2d4f1L,
136
+  0xf8b3dd68L, 0x6e83da1fL, 0xcd16be81L, 0x5b26b9f6L, 0xe177b06fL,
137
+  0x7747b718L, 0xe65a0888L, 0x706a0fffL, 0xca3b0666L, 0x5c0b0111L,
138
+  0xff9e658fL, 0x69ae62f8L, 0xd3ff6b61L, 0x45cf6c16L, 0x78e20aa0L,
139
+  0xeed20dd7L, 0x5483044eL, 0xc2b30339L, 0x612667a7L, 0xf71660d0L,
140
+  0x4d476949L, 0xdb776e3eL, 0x4a6ad1aeL, 0xdc5ad6d9L, 0x660bdf40L,
141
+  0xf03bd837L, 0x53aebca9L, 0xc59ebbdeL, 0x7fcfb247L, 0xe9ffb530L,
142
+  0x1cf2bdbdL, 0x8ac2bacaL, 0x3093b353L, 0xa6a3b424L, 0x0536d0baL,
143
+  0x9306d7cdL, 0x2957de54L, 0xbf67d923L, 0x2e7a66b3L, 0xb84a61c4L,
144
+  0x021b685dL, 0x942b6f2aL, 0x37be0bb4L, 0xa18e0cc3L, 0x1bdf055aL,
145
+  0x8def022dL
146
 #else
147
-   0x00000000L, 0x77073096L, 0xee0e612cL, 0x990951baL, 0x076dc419L,
148
-   0x706af48fL, 0xe963a535L, 0x9e6495a3L, 0x0edb8832L, 0x79dcb8a4L,
149
-   0xe0d5e91eL, 0x97d2d988L, 0x09b64c2bL, 0x7eb17cbdL, 0xe7b82d07L,
150
-   0x90bf1d91L, 0x1db71064L, 0x6ab020f2L, 0xf3b97148L, 0x84be41deL,
151
-   0x1adad47dL, 0x6ddde4ebL, 0xf4d4b551L, 0x83d385c7L, 0x136c9856L,
152
-   0x646ba8c0L, 0xfd62f97aL, 0x8a65c9ecL, 0x14015c4fL, 0x63066cd9L,
153
-   0xfa0f3d63L, 0x8d080df5L, 0x3b6e20c8L, 0x4c69105eL, 0xd56041e4L,
154
-   0xa2677172L, 0x3c03e4d1L, 0x4b04d447L, 0xd20d85fdL, 0xa50ab56bL,
155
-   0x35b5a8faL, 0x42b2986cL, 0xdbbbc9d6L, 0xacbcf940L, 0x32d86ce3L,
156
-   0x45df5c75L, 0xdcd60dcfL, 0xabd13d59L, 0x26d930acL, 0x51de003aL,
157
-   0xc8d75180L, 0xbfd06116L, 0x21b4f4b5L, 0x56b3c423L, 0xcfba9599L,
158
-   0xb8bda50fL, 0x2802b89eL, 0x5f058808L, 0xc60cd9b2L, 0xb10be924L,
159
-   0x2f6f7c87L, 0x58684c11L, 0xc1611dabL, 0xb6662d3dL, 0x76dc4190L,
160
-   0x01db7106L, 0x98d220bcL, 0xefd5102aL, 0x71b18589L, 0x06b6b51fL,
161
-   0x9fbfe4a5L, 0xe8b8d433L, 0x7807c9a2L, 0x0f00f934L, 0x9609a88eL,
162
-   0xe10e9818L, 0x7f6a0dbbL, 0x086d3d2dL, 0x91646c97L, 0xe6635c01L,
163
-   0x6b6b51f4L, 0x1c6c6162L, 0x856530d8L, 0xf262004eL, 0x6c0695edL,
164
-   0x1b01a57bL, 0x8208f4c1L, 0xf50fc457L, 0x65b0d9c6L, 0x12b7e950L,
165
-   0x8bbeb8eaL, 0xfcb9887cL, 0x62dd1ddfL, 0x15da2d49L, 0x8cd37cf3L,
166
-   0xfbd44c65L, 0x4db26158L, 0x3ab551ceL, 0xa3bc0074L, 0xd4bb30e2L,
167
-   0x4adfa541L, 0x3dd895d7L, 0xa4d1c46dL, 0xd3d6f4fbL, 0x4369e96aL,
168
-   0x346ed9fcL, 0xad678846L, 0xda60b8d0L, 0x44042d73L, 0x33031de5L,
169
-   0xaa0a4c5fL, 0xdd0d7cc9L, 0x5005713cL, 0x270241aaL, 0xbe0b1010L,
170
-   0xc90c2086L, 0x5768b525L, 0x206f85b3L, 0xb966d409L, 0xce61e49fL,
171
-   0x5edef90eL, 0x29d9c998L, 0xb0d09822L, 0xc7d7a8b4L, 0x59b33d17L,
172
-   0x2eb40d81L, 0xb7bd5c3bL, 0xc0ba6cadL, 0xedb88320L, 0x9abfb3b6L,
173
-   0x03b6e20cL, 0x74b1d29aL, 0xead54739L, 0x9dd277afL, 0x04db2615L,
174
-   0x73dc1683L, 0xe3630b12L, 0x94643b84L, 0x0d6d6a3eL, 0x7a6a5aa8L,
175
-   0xe40ecf0bL, 0x9309ff9dL, 0x0a00ae27L, 0x7d079eb1L, 0xf00f9344L,
176
-   0x8708a3d2L, 0x1e01f268L, 0x6906c2feL, 0xf762575dL, 0x806567cbL,
177
-   0x196c3671L, 0x6e6b06e7L, 0xfed41b76L, 0x89d32be0L, 0x10da7a5aL,
178
-   0x67dd4accL, 0xf9b9df6fL, 0x8ebeeff9L, 0x17b7be43L, 0x60b08ed5L,
179
-   0xd6d6a3e8L, 0xa1d1937eL, 0x38d8c2c4L, 0x4fdff252L, 0xd1bb67f1L,
180
-   0xa6bc5767L, 0x3fb506ddL, 0x48b2364bL, 0xd80d2bdaL, 0xaf0a1b4cL,
181
-   0x36034af6L, 0x41047a60L, 0xdf60efc3L, 0xa867df55L, 0x316e8eefL,
182
-   0x4669be79L, 0xcb61b38cL, 0xbc66831aL, 0x256fd2a0L, 0x5268e236L,
183
-   0xcc0c7795L, 0xbb0b4703L, 0x220216b9L, 0x5505262fL, 0xc5ba3bbeL,
184
-   0xb2bd0b28L, 0x2bb45a92L, 0x5cb36a04L, 0xc2d7ffa7L, 0xb5d0cf31L,
185
-   0x2cd99e8bL, 0x5bdeae1dL, 0x9b64c2b0L, 0xec63f226L, 0x756aa39cL,
186
-   0x026d930aL, 0x9c0906a9L, 0xeb0e363fL, 0x72076785L, 0x05005713L,
187
-   0x95bf4a82L, 0xe2b87a14L, 0x7bb12baeL, 0x0cb61b38L, 0x92d28e9bL,
188
-   0xe5d5be0dL, 0x7cdcefb7L, 0x0bdbdf21L, 0x86d3d2d4L, 0xf1d4e242L,
189
-   0x68ddb3f8L, 0x1fda836eL, 0x81be16cdL, 0xf6b9265bL, 0x6fb077e1L,
190
-   0x18b74777L, 0x88085ae6L, 0xff0f6a70L, 0x66063bcaL, 0x11010b5cL,
191
-   0x8f659effL, 0xf862ae69L, 0x616bffd3L, 0x166ccf45L, 0xa00ae278L,
192
-   0xd70dd2eeL, 0x4e048354L, 0x3903b3c2L, 0xa7672661L, 0xd06016f7L,
193
-   0x4969474dL, 0x3e6e77dbL, 0xaed16a4aL, 0xd9d65adcL, 0x40df0b66L,
194
-   0x37d83bf0L, 0xa9bcae53L, 0xdebb9ec5L, 0x47b2cf7fL, 0x30b5ffe9L,
195
-   0xbdbdf21cL, 0xcabac28aL, 0x53b39330L, 0x24b4a3a6L, 0xbad03605L,
196
-   0xcdd70693L, 0x54de5729L, 0x23d967bfL, 0xb3667a2eL, 0xc4614ab8L,
197
-   0x5d681b02L, 0x2a6f2b94L, 0xb40bbe37L, 0xc30c8ea1L, 0x5a05df1bL,
198
-   0x2d02ef8dL
199
+  0x00000000L, 0x77073096L, 0xee0e612cL, 0x990951baL, 0x076dc419L,
200
+  0x706af48fL, 0xe963a535L, 0x9e6495a3L, 0x0edb8832L, 0x79dcb8a4L,
201
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlDate.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlDate.cpp Changed
98
 
1
@@ -17,9 +17,9 @@
2
 **
3
 ** You should have received a copy of the GNU Lesser General Public
4
 ** License along with this library; if not, write to the Free Software
5
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
6
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
7
 **
8
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
9
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
10
 **
11
 ** Contact license@matroska.org if any conditions of this licensing are
12
 ** not clear to you.
13
@@ -27,9 +27,9 @@
14
 **********************************************************************/
15
 
16
 /*!
17
-   \file
18
-   \version \$Id: EbmlDate.cpp 1079 2005-03-03 13:18:14Z robux4 $
19
-   \author Steve Lhomme     <robux4 @ users.sf.net>
20
+  \file
21
+  \version \$Id: EbmlDate.cpp 1079 2005-03-03 13:18:14Z robux4 $
22
+  \author Steve Lhomme     <robux4 @ users.sf.net>
23
 */
24
 #include <lgpl/cassert>
25
 
26
@@ -42,49 +42,47 @@
27
 EbmlDate::EbmlDate(const EbmlDate & ElementToClone)
28
 :EbmlElement(ElementToClone)
29
 {
30
-   myDate = ElementToClone.myDate;
31
+  myDate = ElementToClone.myDate;
32
 }
33
 
34
 #ifndef EBML_NO_READ
35
 filepos_t EbmlDate::ReadData(IOCallback & input, ScopeMode ReadFully)
36
 {
37
-   if (ReadFully != SCOPE_NO_DATA)
38
-   {
39
-       if (GetSize() != 0) {
40
-           assert(GetSize() == 8);
41
-           binary Buffer[8];
42
-           input.readFully(Buffer, GetSize());
43
+  if ((ReadFully == SCOPE_NO_DATA) || (GetSize() == 0))
44
+    return GetSize();
45
 
46
-           big_int64 b64;
47
-           b64.Eval(Buffer);
48
+  assert(GetSize() == 8);
49
+  binary Buffer[8];
50
+  input.readFully(Buffer, GetSize());
51
 
52
-           myDate = b64;
53
-           SetValueIsSet();
54
-       }
55
-   }
56
+  big_int64 b64;
57
+  b64.Eval(Buffer);
58
 
59
-   return GetSize();
60
+  myDate = b64;
61
+  SetValueIsSet();
62
+
63
+  return GetSize();
64
 }
65
 #endif
66
 
67
 filepos_t EbmlDate::RenderData(IOCallback & output, bool /* bForceRender */, bool  /* bWithDefault */)
68
 {
69
-   if (GetSize() != 0) {
70
-       assert(GetSize() == 8);
71
-       big_int64 b64(myDate);
72
+  if (GetSize() != 0) {
73
+    assert(GetSize() == 8);
74
+    big_int64 b64(myDate);
75
 
76
-       output.writeFully(&b64.endian(),GetSize());
77
-   }
78
+    output.writeFully(&b64.endian(),GetSize());
79
+  }
80
 
81
-   return GetSize();
82
+  return GetSize();
83
 }
84
 
85
 bool EbmlDate::IsSmallerThan(const EbmlElement *Cmp) const
86
 {
87
-   if (EbmlId(*this) == EbmlId(*Cmp))
88
-       return this->myDate < static_cast<const EbmlDate *>(Cmp)->myDate;
89
-   else
90
-       return false;
91
+  if (EbmlId(*this) == EbmlId(*Cmp))
92
+    return this->myDate < static_cast<const EbmlDate *>(Cmp)->myDate;
93
+  else
94
+    return false;
95
 }
96
 
97
 END_LIBEBML_NAMESPACE
98
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlDummy.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlDummy.cpp Changed
45
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id$
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #include "ebml/EbmlDummy.h"
35
 #include "ebml/EbmlContexts.h"
36
@@ -44,7 +44,7 @@
37
 
38
 EbmlDummy::operator const EbmlId &()
39
 {
40
-    return DummyId;
41
+  return DummyId;
42
 }
43
 
44
 END_LIBEBML_NAMESPACE
45
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlElement.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlElement.cpp Changed
201
 
1
@@ -17,9 +17,9 @@
2
 **
3
 ** You should have received a copy of the GNU Lesser General Public
4
 ** License along with this library; if not, write to the Free Software
5
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
6
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
7
 **
8
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
9
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
10
 **
11
 ** Contact license@matroska.org if any conditions of this licensing are
12
 ** not clear to you.
13
@@ -27,9 +27,9 @@
14
 **********************************************************************/
15
 
16
 /*!
17
-   \file
18
-   \version \$Id$
19
-   \author Steve Lhomme     <robux4 @ users.sf.net>
20
+  \file
21
+  \version \$Id$
22
+  \author Steve Lhomme     <robux4 @ users.sf.net>
23
 */
24
 
25
 #include <cstring>
26
@@ -45,658 +45,659 @@
27
 START_LIBEBML_NAMESPACE
28
 
29
 /*!
30
-   \todo handle more than CodedSize of 5
31
+  \todo handle more than CodedSize of 5
32
 */
33
 int CodedSizeLength(uint64 Length, unsigned int SizeLength, bool bSizeFinite)
34
 {
35
-   unsigned int CodedSize;
36
-   if (bSizeFinite) {
37
-       // prepare the head of the size (000...01xxxxxx)
38
-       // optimal size
39
-       if (Length < 127) // 2^7 - 1
40
-           CodedSize = 1;
41
-       else if (Length < 16383) // 2^14 - 1
42
-           CodedSize = 2;
43
-       else if (Length < 2097151L) // 2^21 - 1
44
-           CodedSize = 3;
45
-       else if (Length < 268435455L) // 2^28 - 1
46
-           CodedSize = 4;
47
-       else CodedSize = 5;
48
-   } else {
49
-       if (Length <= 127) // 2^7 - 1
50
-           CodedSize = 1;
51
-       else if (Length <= 16383) // 2^14 - 1
52
-           CodedSize = 2;
53
-       else if (Length <= 2097151L) // 2^21 - 1
54
-           CodedSize = 3;
55
-       else if (Length <= 268435455L) // 2^28 - 1
56
-           CodedSize = 4;
57
-       else CodedSize = 5;
58
-   }
59
-
60
-   if ((SizeLength > 0) && (CodedSize < SizeLength)) {
61
-       // defined size
62
-       CodedSize = SizeLength;
63
-   }
64
-
65
-   return CodedSize;
66
+  unsigned int CodedSize;
67
+  if (bSizeFinite) {
68
+    // prepare the head of the size (000...01xxxxxx)
69
+    // optimal size
70
+    if (Length < 127) // 2^7 - 1
71
+      CodedSize = 1;
72
+    else if (Length < 16383) // 2^14 - 1
73
+      CodedSize = 2;
74
+    else if (Length < 2097151L) // 2^21 - 1
75
+      CodedSize = 3;
76
+    else if (Length < 268435455L) // 2^28 - 1
77
+      CodedSize = 4;
78
+    else CodedSize = 5;
79
+  } else {
80
+    if (Length <= 127) // 2^7 - 1
81
+      CodedSize = 1;
82
+    else if (Length <= 16383) // 2^14 - 1
83
+      CodedSize = 2;
84
+    else if (Length <= 2097151L) // 2^21 - 1
85
+      CodedSize = 3;
86
+    else if (Length <= 268435455L) // 2^28 - 1
87
+      CodedSize = 4;
88
+    else CodedSize = 5;
89
+  }
90
+
91
+  if ((SizeLength > 0) && (CodedSize < SizeLength)) {
92
+    // defined size
93
+    CodedSize = SizeLength;
94
+  }
95
+
96
+  return CodedSize;
97
 }
98
 
99
 /*!
100
-   \todo handle more than CodedSize of 5
101
+  \todo handle more than CodedSize of 5
102
 */
103
 int CodedSizeLengthSigned(int64 Length, unsigned int SizeLength)
104
 {
105
-   unsigned int CodedSize;
106
-   // prepare the head of the size (000...01xxxxxx)
107
-   // optimal size
108
-   if (Length > -64 && Length < 64) // 2^6
109
-       CodedSize = 1;
110
-   else if (Length > -8192 && Length < 8192) // 2^13
111
-       CodedSize = 2;
112
-   else if (Length > -1048576L && Length < 1048576L) // 2^20
113
-       CodedSize = 3;
114
-   else if (Length > -134217728L && Length < 134217728L) // 2^27
115
-       CodedSize = 4;
116
-   else CodedSize = 5;
117
-
118
-   if (SizeLength > 0 && CodedSize < SizeLength) {
119
-       // defined size
120
-       CodedSize = SizeLength;
121
-   }
122
-
123
-   return CodedSize;
124
+  unsigned int CodedSize;
125
+  // prepare the head of the size (000...01xxxxxx)
126
+  // optimal size
127
+  if (Length > -64 && Length < 64) // 2^6
128
+    CodedSize = 1;
129
+  else if (Length > -8192 && Length < 8192) // 2^13
130
+    CodedSize = 2;
131
+  else if (Length > -1048576L && Length < 1048576L) // 2^20
132
+    CodedSize = 3;
133
+  else if (Length > -134217728L && Length < 134217728L) // 2^27
134
+    CodedSize = 4;
135
+  else CodedSize = 5;
136
+
137
+  if (SizeLength > 0 && CodedSize < SizeLength) {
138
+    // defined size
139
+    CodedSize = SizeLength;
140
+  }
141
+
142
+  return CodedSize;
143
 }
144
 
145
 int CodedValueLength(uint64 Length, int CodedSize, binary * OutBuffer)
146
 {
147
-   int _SizeMask = 0xFF;
148
-   OutBuffer[0] = 1 << (8 - CodedSize);
149
-   for (int i=1; i<CodedSize; i++) {
150
-       OutBuffer[CodedSize-i] = Length & 0xFF;
151
-       Length >>= 8;
152
-       _SizeMask >>= 1;
153
-   }
154
-   // first one use a OR with the "EBML size head"
155
-   OutBuffer[0] |= Length & 0xFF & _SizeMask;
156
-   return CodedSize;
157
+  int _SizeMask = 0xFF;
158
+  OutBuffer[0] = 1 << (8 - CodedSize);
159
+  for (int i=1; i<CodedSize; i++) {
160
+    OutBuffer[CodedSize-i] = Length & 0xFF;
161
+    Length >>= 8;
162
+    _SizeMask >>= 1;
163
+  }
164
+  // first one use a OR with the "EBML size head"
165
+  OutBuffer[0] |= Length & 0xFF & _SizeMask;
166
+  return CodedSize;
167
 }
168
 
169
 int CodedValueLengthSigned(int64 Length, int CodedSize, binary * OutBuffer)
170
 {
171
-   if (Length > -64 && Length < 64) // 2^6
172
-       Length += 63;
173
-   else if (Length > -8192 && Length < 8192) // 2^13
174
-       Length += 8191;
175
-   else if (Length > -1048576L && Length < 1048576L) // 2^20
176
-       Length += 1048575L;
177
-   else if (Length > -134217728L && Length < 134217728L) // 2^27
178
-       Length += 134217727L;
179
-
180
-   return CodedValueLength(Length, CodedSize, OutBuffer);
181
+  if (Length > -64 && Length < 64) // 2^6
182
+    Length += 63;
183
+  else if (Length > -8192 && Length < 8192) // 2^13
184
+    Length += 8191;
185
+  else if (Length > -1048576L && Length < 1048576L) // 2^20
186
+    Length += 1048575L;
187
+  else if (Length > -134217728L && Length < 134217728L) // 2^27
188
+    Length += 134217727L;
189
+
190
+  return CodedValueLength(Length, CodedSize, OutBuffer);
191
 }
192
 
193
 uint64 ReadCodedSizeValue(const binary * InBuffer, uint32 & BufferSize, uint64 & SizeUnknown)
194
 {
195
-   binary SizeBitMask = 1 << 7;
196
-   uint64 Result = 0x7F;
197
-   unsigned int SizeIdx, PossibleSizeLength = 0;
198
-   binary PossibleSize[8];
199
-
200
-   SizeUnknown = 0x7F; // the last bit is discarded when computing the size
201
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlFloat.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlFloat.cpp Changed
201
 
1
@@ -19,9 +19,9 @@
2
 **
3
 ** You should have received a copy of the GNU Lesser General Public
4
 ** License along with this library; if not, write to the Free Software
5
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
6
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
7
 **
8
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
9
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
10
 **
11
 ** Contact license@matroska.org if any conditions of this licensing are
12
 ** not clear to you.
13
@@ -29,9 +29,9 @@
14
 **********************************************************************/
15
 
16
 /*!
17
-   \file
18
-   \version \$Id$
19
-   \author Steve Lhomme     <robux4 @ users.sf.net>
20
+  \file
21
+  \version \$Id$
22
+  \author Steve Lhomme     <robux4 @ users.sf.net>
23
 */
24
 
25
 #include <lgpl/cassert>
26
@@ -41,36 +41,36 @@
27
 START_LIBEBML_NAMESPACE
28
 
29
 EbmlFloat::EbmlFloat(const EbmlFloat::Precision prec)
30
- :EbmlElement(0, false)
31
+  :EbmlElement(0, false)
32
 {
33
-   SetPrecision(prec);
34
+  SetPrecision(prec);
35
 }
36
 
37
 EbmlFloat::EbmlFloat(const double aDefaultValue, const EbmlFloat::Precision prec)
38
- :EbmlElement(0, true), Value(aDefaultValue), DefaultValue(aDefaultValue)
39
+  :EbmlElement(0, true), Value(aDefaultValue), DefaultValue(aDefaultValue)
40
 {
41
-   SetDefaultIsSet();
42
-   SetPrecision(prec);
43
+  SetDefaultIsSet();
44
+  SetPrecision(prec);
45
 }
46
 
47
 EbmlFloat::EbmlFloat(const EbmlFloat & ElementToClone)
48
- :EbmlElement(ElementToClone)
49
- ,Value(ElementToClone.Value)
50
- ,DefaultValue(ElementToClone.DefaultValue)
51
+  :EbmlElement(ElementToClone)
52
+  ,Value(ElementToClone.Value)
53
+  ,DefaultValue(ElementToClone.DefaultValue)
54
 {
55
 }
56
 
57
 void EbmlFloat::SetDefaultValue(double aValue)
58
 {
59
-    assert(!DefaultISset());
60
-    DefaultValue = aValue;
61
-    SetDefaultIsSet();
62
+  assert(!DefaultISset());
63
+  DefaultValue = aValue;
64
+  SetDefaultIsSet();
65
 }
66
 
67
 double EbmlFloat::DefaultVal() const
68
 {
69
-    assert(DefaultISset());
70
-    return DefaultValue;
71
+  assert(DefaultISset());
72
+  return DefaultValue;
73
 }
74
 
75
 EbmlFloat::operator float() const {return float(Value);}
76
@@ -83,78 +83,77 @@
77
 }
78
 
79
 /*!
80
-   \todo handle exception on errors
81
-   \todo handle 10 bits precision
82
+  \todo handle exception on errors
83
+  \todo handle 10 bits precision
84
 */
85
 filepos_t EbmlFloat::RenderData(IOCallback & output, bool /* bForceRender */, bool /* bWithDefault */)
86
 {
87
-   assert(GetSize() == 4 || GetSize() == 8);
88
-
89
-   if (GetSize() == 4) {
90
-       float val = Value;
91
-       int Tmp;
92
-       memcpy(&Tmp, &val, 4);
93
-       big_int32 TmpToWrite(Tmp);
94
-       output.writeFully(&TmpToWrite.endian(), GetSize());
95
-   } else if (GetSize() == 8) {
96
-       double val = Value;
97
-       int64 Tmp;
98
-       memcpy(&Tmp, &val, 8);
99
-       big_int64 TmpToWrite(Tmp);
100
-       output.writeFully(&TmpToWrite.endian(), GetSize());
101
-   }
102
-
103
-   return GetSize();
104
+  assert(GetSize() == 4 || GetSize() == 8);
105
+
106
+  if (GetSize() == 4) {
107
+    float val = Value;
108
+    int Tmp;
109
+    memcpy(&Tmp, &val, 4);
110
+    big_int32 TmpToWrite(Tmp);
111
+    output.writeFully(&TmpToWrite.endian(), GetSize());
112
+  } else if (GetSize() == 8) {
113
+    double val = Value;
114
+    int64 Tmp;
115
+    memcpy(&Tmp, &val, 8);
116
+    big_int64 TmpToWrite(Tmp);
117
+    output.writeFully(&TmpToWrite.endian(), GetSize());
118
+  }
119
+
120
+  return GetSize();
121
 }
122
 
123
 uint64 EbmlFloat::UpdateSize(bool bWithDefault, bool  /* bForceRender */)
124
 {
125
-   if (!bWithDefault && IsDefaultValue())
126
-       return 0;
127
-   return GetSize();
128
+  if (!bWithDefault && IsDefaultValue())
129
+    return 0;
130
+  return GetSize();
131
 }
132
 
133
 /*!
134
-   \todo remove the hack for possible endianess pb (test on little & big endian)
135
+  \todo remove the hack for possible endianess pb (test on little & big endian)
136
 */
137
 #ifndef EBML_NO_READ
138
 filepos_t EbmlFloat::ReadData(IOCallback & input, ScopeMode ReadFully)
139
 {
140
-   if (ReadFully != SCOPE_NO_DATA)
141
-   {
142
-       binary Buffer[20];
143
-       assert(GetSize() <= 20);
144
-       input.readFully(Buffer, GetSize());
145
-
146
-       if (GetSize() == 4) {
147
-           big_int32 TmpRead;
148
-           TmpRead.Eval(Buffer);
149
-           int32 tmpp = int32(TmpRead);
150
-           float val;
151
-           memcpy(&val, &tmpp, 4);
152
-           Value = val;
153
-           SetValueIsSet();
154
-       } else if (GetSize() == 8) {
155
-           big_int64 TmpRead;
156
-           TmpRead.Eval(Buffer);
157
-           int64 tmpp = int64(TmpRead);
158
-           double val;
159
-           memcpy(&val, &tmpp, 8);
160
-           Value = val;
161
-           SetValueIsSet();
162
-       }
163
-   }
164
-
165
-   return GetSize();
166
+  if (ReadFully != SCOPE_NO_DATA) {
167
+    binary Buffer[20];
168
+    assert(GetSize() <= 20);
169
+    input.readFully(Buffer, GetSize());
170
+
171
+    if (GetSize() == 4) {
172
+      big_int32 TmpRead;
173
+      TmpRead.Eval(Buffer);
174
+      int32 tmpp = int32(TmpRead);
175
+      float val;
176
+      memcpy(&val, &tmpp, 4);
177
+      Value = val;
178
+      SetValueIsSet();
179
+    } else if (GetSize() == 8) {
180
+      big_int64 TmpRead;
181
+      TmpRead.Eval(Buffer);
182
+      int64 tmpp = int64(TmpRead);
183
+      double val;
184
+      memcpy(&val, &tmpp, 8);
185
+      Value = val;
186
+      SetValueIsSet();
187
+    }
188
+  }
189
+
190
+  return GetSize();
191
 }
192
 #endif
193
 
194
 bool EbmlFloat::IsSmallerThan(const EbmlElement *Cmp) const
195
 {
196
-   if (EbmlId(*this) == EbmlId(*Cmp))
197
-       return this->Value < static_cast<const EbmlFloat *>(Cmp)->Value;
198
-   else
199
-       return false;
200
+  if (EbmlId(*this) == EbmlId(*Cmp))
201
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlHead.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlHead.cpp Changed
45
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlHead.cpp 1096 2005-03-17 09:14:52Z robux4 $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id: EbmlHead.cpp 1096 2005-03-17 09:14:52Z robux4 $
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #include "ebml/EbmlHead.h"
35
 #include "ebml/EbmlSubHead.h"
36
@@ -52,7 +52,7 @@
37
 DEFINE_EBML_MASTER_ORPHAN(EbmlHead, 0x1A45DFA3, 4, "EBMLHead\0ratamapaga");
38
 
39
 EbmlHead::EbmlHead()
40
- :EbmlMaster(EbmlHead_Context)
41
+  :EbmlMaster(EbmlHead_Context)
42
 {}
43
 
44
 END_LIBEBML_NAMESPACE
45
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlMaster.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlMaster.cpp Changed
201
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id$
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 
35
 #include <lgpl/cassert>
36
@@ -47,9 +47,9 @@
37
 EbmlMaster::EbmlMaster(const EbmlSemanticContext & aContext, bool bSizeIsknown)
38
  :EbmlElement(0), Context(aContext), bChecksumUsed(bChecksumUsedByDefault)
39
 {
40
-   SetSizeIsFinite(bSizeIsknown);
41
-   SetValueIsSet();
42
-   ProcessMandatory();
43
+  SetSizeIsFinite(bSizeIsknown);
44
+  SetValueIsSet();
45
+  ProcessMandatory();
46
 }
47
 
48
 EbmlMaster::EbmlMaster(const EbmlMaster & ElementToClone)
49
@@ -59,498 +59,529 @@
50
  ,bChecksumUsed(ElementToClone.bChecksumUsed)
51
  ,Checksum(ElementToClone.Checksum)
52
 {
53
-   // add a clone of the list
54
-   std::vector<EbmlElement *>::const_iterator Itr = ElementToClone.ElementList.begin();
55
-   std::vector<EbmlElement *>::iterator myItr = ElementList.begin();
56
-   while (Itr != ElementToClone.ElementList.end())
57
-   {
58
-       *myItr = (*Itr)->Clone();
59
-       Itr++; myItr++;
60
-   }
61
+  // add a clone of the list
62
+  std::vector<EbmlElement *>::const_iterator Itr = ElementToClone.ElementList.begin();
63
+  std::vector<EbmlElement *>::iterator myItr = ElementList.begin();
64
+  while (Itr != ElementToClone.ElementList.end())
65
+  {
66
+    *myItr = (*Itr)->Clone();
67
+    ++Itr; ++myItr;
68
+  }
69
 
70
 }
71
 
72
 EbmlMaster::~EbmlMaster()
73
 {
74
-   assert(!IsLocked()); // you're trying to delete a locked element !!!
75
-
76
-   size_t Index;
77
-   
78
-   for (Index = 0; Index < ElementList.size(); Index++) {
79
-       if (!(*ElementList[Index]).IsLocked())  {
80
-           delete ElementList[Index];
81
-       }
82
-   }
83
+  assert(!IsLocked()); // you're trying to delete a locked element !!!
84
+
85
+  size_t Index;
86
+
87
+  for (Index = 0; Index < ElementList.size(); Index++) {
88
+    if (!(*ElementList[Index]).IsLocked())  {
89
+      delete ElementList[Index];
90
+    }
91
+  }
92
 }
93
 
94
 /*!
95
-   \todo handle exception on errors
96
-   \todo write all the Mandatory elements in the Context, otherwise assert
97
+  \todo handle exception on errors
98
+  \todo write all the Mandatory elements in the Context, otherwise assert
99
 */
100
 filepos_t EbmlMaster::RenderData(IOCallback & output, bool bForceRender, bool bWithDefault)
101
 {
102
-   filepos_t Result = 0;
103
-   size_t Index;
104
-
105
-   if (!bForceRender) {
106
-       assert(CheckMandatory());
107
-   }
108
-
109
-   if (!bChecksumUsed) { // old school
110
-       for (Index = 0; Index < ElementList.size(); Index++) {
111
-           if (!bWithDefault && (ElementList[Index])->IsDefaultValue())
112
-               continue;
113
-           Result += (ElementList[Index])->Render(output, bWithDefault, false ,bForceRender);
114
-       }
115
-   } else { // new school
116
-       MemIOCallback TmpBuf(GetSize() - 6);
117
-       for (Index = 0; Index < ElementList.size(); Index++) {
118
-           if (!bWithDefault && (ElementList[Index])->IsDefaultValue())
119
-               continue;
120
-           (ElementList[Index])->Render(TmpBuf, bWithDefault, false ,bForceRender);
121
-       }
122
-       Checksum.FillCRC32(TmpBuf.GetDataBuffer(), TmpBuf.GetDataBufferSize());
123
-       Result += Checksum.Render(output, true, false ,bForceRender);
124
-       output.writeFully(TmpBuf.GetDataBuffer(), TmpBuf.GetDataBufferSize());
125
-       Result += TmpBuf.GetDataBufferSize();
126
-   }
127
-
128
-   return Result;
129
+  filepos_t Result = 0;
130
+  size_t Index;
131
+
132
+  if (!bForceRender) {
133
+    assert(CheckMandatory());
134
+  }
135
+
136
+  if (!bChecksumUsed) { // old school
137
+    for (Index = 0; Index < ElementList.size(); Index++) {
138
+      if (!bWithDefault && (ElementList[Index])->IsDefaultValue())
139
+        continue;
140
+      Result += (ElementList[Index])->Render(output, bWithDefault, false ,bForceRender);
141
+    }
142
+  } else { // new school
143
+    MemIOCallback TmpBuf(GetSize() - 6);
144
+    for (Index = 0; Index < ElementList.size(); Index++) {
145
+      if (!bWithDefault && (ElementList[Index])->IsDefaultValue())
146
+        continue;
147
+      (ElementList[Index])->Render(TmpBuf, bWithDefault, false ,bForceRender);
148
+    }
149
+    Checksum.FillCRC32(TmpBuf.GetDataBuffer(), TmpBuf.GetDataBufferSize());
150
+    Result += Checksum.Render(output, true, false ,bForceRender);
151
+    output.writeFully(TmpBuf.GetDataBuffer(), TmpBuf.GetDataBufferSize());
152
+    Result += TmpBuf.GetDataBufferSize();
153
+  }
154
+
155
+  return Result;
156
 }
157
 
158
 /*!
159
-   \todo We might be able to forbid elements that don't exist in the context
160
+  \todo We might be able to forbid elements that don't exist in the context
161
 */
162
 bool EbmlMaster::PushElement(EbmlElement & element)
163
 {
164
-   ElementList.push_back(&element);
165
-   return true;
166
+  ElementList.push_back(&element);
167
+  return true;
168
 }
169
 
170
 uint64 EbmlMaster::UpdateSize(bool bWithDefault, bool bForceRender)
171
 {
172
-   SetSize_(0);
173
+  SetSize_(0);
174
 
175
-   if (!IsFiniteSize())
176
-       return (0-1);
177
+  if (!IsFiniteSize())
178
+    return (0-1);
179
 
180
-   if (!bForceRender) {
181
-       assert(CheckMandatory());
182
+  if (!bForceRender) {
183
+    assert(CheckMandatory());
184
     }
185
-   
186
-   size_t Index;
187
-   
188
-   for (Index = 0; Index < ElementList.size(); Index++) {
189
-       if (!bWithDefault && (ElementList[Index])->IsDefaultValue())
190
-           continue;
191
-       (ElementList[Index])->UpdateSize(bWithDefault, bForceRender);
192
-       uint64 SizeToAdd = (ElementList[Index])->ElementSize(bWithDefault);
193
+
194
+  size_t Index;
195
+
196
+  for (Index = 0; Index < ElementList.size(); Index++) {
197
+    if (!bWithDefault && (ElementList[Index])->IsDefaultValue())
198
+      continue;
199
+    (ElementList[Index])->UpdateSize(bWithDefault, bForceRender);
200
+    uint64 SizeToAdd = (ElementList[Index])->ElementSize(bWithDefault);
201
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlSInteger.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlSInteger.cpp Changed
201
 
1
@@ -9,17 +9,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -27,10 +27,10 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Moritz Bunkus <moritz @ bunkus.org>
31
+  \file
32
+  \version \$Id$
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Moritz Bunkus <moritz @ bunkus.org>
35
 */
36
 #include <lgpl/cassert>
37
 
38
@@ -39,19 +39,19 @@
39
 START_LIBEBML_NAMESPACE
40
 
41
 EbmlSInteger::EbmlSInteger()
42
- :EbmlElement(DEFAULT_INT_SIZE, false)
43
+  :EbmlElement(DEFAULT_INT_SIZE, false)
44
 {}
45
 
46
 EbmlSInteger::EbmlSInteger(int64 aDefaultValue)
47
- :EbmlElement(DEFAULT_INT_SIZE, true), Value(aDefaultValue)
48
+  :EbmlElement(DEFAULT_INT_SIZE, true), Value(aDefaultValue)
49
 {
50
-   SetDefaultIsSet();
51
+  SetDefaultIsSet();
52
 }
53
 
54
 EbmlSInteger::EbmlSInteger(const EbmlSInteger & ElementToClone)
55
- :EbmlElement(ElementToClone)
56
- ,Value(ElementToClone.Value)
57
- ,DefaultValue(ElementToClone.DefaultValue)
58
+  :EbmlElement(ElementToClone)
59
+  ,Value(ElementToClone.Value)
60
+  ,DefaultValue(ElementToClone.DefaultValue)
61
 {
62
 }
63
 
64
@@ -67,91 +67,89 @@
65
 }
66
 
67
 /*!
68
-   \todo handle exception on errors
69
+  \todo handle exception on errors
70
 */
71
 filepos_t EbmlSInteger::RenderData(IOCallback & output, bool /* bForceRender */, bool /* bWithDefault */)
72
 {
73
-   binary FinalData[8]; // we don't handle more than 64 bits integers
74
-   unsigned int i;
75
-   
76
-   if (GetSizeLength() > 8)
77
-       return 0; // integer bigger coded on more than 64 bits are not supported
78
-   
79
-   int64 TempValue = Value;
80
-   for (i=0; i<GetSize();i++) {
81
-       FinalData[GetSize()-i-1] = binary(TempValue & 0xFF);
82
-       TempValue >>= 8;
83
-   }
84
-   
85
-   output.writeFully(FinalData,GetSize());
86
-
87
-   return GetSize();
88
+  binary FinalData[8]; // we don't handle more than 64 bits integers
89
+  unsigned int i;
90
+
91
+  if (GetSizeLength() > 8)
92
+    return 0; // integer bigger coded on more than 64 bits are not supported
93
+
94
+  int64 TempValue = Value;
95
+  for (i=0; i<GetSize();i++) {
96
+    FinalData[GetSize()-i-1] = binary(TempValue & 0xFF);
97
+    TempValue >>= 8;
98
+  }
99
+
100
+  output.writeFully(FinalData,GetSize());
101
+
102
+  return GetSize();
103
 }
104
 
105
 uint64 EbmlSInteger::UpdateSize(bool bWithDefault, bool /* bForceRender */)
106
 {
107
-   if (!bWithDefault && IsDefaultValue())
108
-       return 0;
109
-
110
-   if (Value <= 0x7F && Value >= (-0x80)) {
111
-       SetSize_(1);
112
-   } else if (Value <= 0x7FFF && Value >= (-0x8000)) {
113
-       SetSize_(2);
114
-   } else if (Value <= 0x7FFFFF && Value >= (-0x800000)) {
115
-       SetSize_(3);
116
-   } else if (Value <= 0x7FFFFFFF && Value >= (-0x80000000)) {
117
-       SetSize_(4);
118
-   } else if (Value <= EBML_PRETTYLONGINT(0x7FFFFFFFFF) &&
119
-          Value >= EBML_PRETTYLONGINT(-0x8000000000)) {
120
-       SetSize_(5);
121
-   } else if (Value <= EBML_PRETTYLONGINT(0x7FFFFFFFFFFF) &&
122
-          Value >= EBML_PRETTYLONGINT(-0x800000000000)) {
123
-       SetSize_(6);
124
-   } else if (Value <= EBML_PRETTYLONGINT(0x7FFFFFFFFFFFFF) &&
125
-          Value >= EBML_PRETTYLONGINT(-0x80000000000000)) {
126
-       SetSize_(7);
127
-   } else {
128
-       SetSize_(8);
129
-   }
130
-
131
-   if (GetDefaultSize() > GetSize()) {
132
-       SetSize_(GetDefaultSize());
133
-   }
134
-
135
-   return GetSize();
136
+  if (!bWithDefault && IsDefaultValue())
137
+    return 0;
138
+
139
+  if (Value <= 0x7F && Value >= (-0x80)) {
140
+    SetSize_(1);
141
+  } else if (Value <= 0x7FFF && Value >= (-0x8000)) {
142
+    SetSize_(2);
143
+  } else if (Value <= 0x7FFFFF && Value >= (-0x800000)) {
144
+    SetSize_(3);
145
+  } else if (Value <= EBML_PRETTYLONGINT(0x7FFFFFFF) && Value >= (EBML_PRETTYLONGINT(-0x80000000))) {
146
+    SetSize_(4);
147
+  } else if (Value <= EBML_PRETTYLONGINT(0x7FFFFFFFFF) &&
148
+             Value >= EBML_PRETTYLONGINT(-0x8000000000)) {
149
+    SetSize_(5);
150
+  } else if (Value <= EBML_PRETTYLONGINT(0x7FFFFFFFFFFF) &&
151
+             Value >= EBML_PRETTYLONGINT(-0x800000000000)) {
152
+    SetSize_(6);
153
+  } else if (Value <= EBML_PRETTYLONGINT(0x7FFFFFFFFFFFFF) &&
154
+             Value >= EBML_PRETTYLONGINT(-0x80000000000000)) {
155
+    SetSize_(7);
156
+  } else {
157
+    SetSize_(8);
158
+  }
159
+
160
+  if (GetDefaultSize() > GetSize()) {
161
+    SetSize_(GetDefaultSize());
162
+  }
163
+
164
+  return GetSize();
165
 }
166
 
167
 #ifndef EBML_NO_READ
168
 filepos_t EbmlSInteger::ReadData(IOCallback & input, ScopeMode ReadFully)
169
 {
170
-   if (ReadFully != SCOPE_NO_DATA)
171
-   {
172
-       binary Buffer[8];
173
-       input.readFully(Buffer, GetSize());
174
-       
175
-       if (Buffer[0] & 0x80)
176
-           Value = -1; // this is a negative value
177
-       else
178
-           Value = 0; // this is a positive value
179
-       
180
-       for (unsigned int i=0; i<GetSize(); i++)
181
-       {
182
-           Value <<= 8;
183
-           Value |= Buffer[i];
184
-       }
185
-       SetValueIsSet();
186
-   }
187
-
188
-   return GetSize();
189
+  if (ReadFully != SCOPE_NO_DATA) {
190
+    binary Buffer[8];
191
+    input.readFully(Buffer, GetSize());
192
+
193
+    if (Buffer[0] & 0x80)
194
+      Value = -1; // this is a negative value
195
+    else
196
+      Value = 0; // this is a positive value
197
+
198
+    for (unsigned int i=0; i<GetSize(); i++) {
199
+      Value <<= 8;
200
+      Value |= Buffer[i];
201
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlStream.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlStream.cpp Changed
59
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,16 +29,16 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id$
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #include "ebml/EbmlStream.h"
35
 
36
 START_LIBEBML_NAMESPACE
37
 
38
 EbmlStream::EbmlStream(IOCallback & DataStream)
39
- :Stream(DataStream)
40
+  :Stream(DataStream)
41
 {}
42
 
43
 EbmlStream::~EbmlStream()
44
@@ -46,12 +46,12 @@
45
 
46
 EbmlElement * EbmlStream::FindNextID(const EbmlCallbacks & ClassInfos, uint64 MaxDataSize)
47
 {
48
-   return EbmlElement::FindNextID(Stream, ClassInfos, MaxDataSize);
49
+  return EbmlElement::FindNextID(Stream, ClassInfos, MaxDataSize);
50
 }
51
 
52
 EbmlElement * EbmlStream::FindNextElement(const EbmlSemanticContext & Context, int & UpperLevel, uint64 MaxDataSize, bool AllowDummyElt, unsigned int MaxLowerLevel)
53
 {
54
-   return EbmlElement::FindNextElement(Stream, Context, UpperLevel, MaxDataSize, AllowDummyElt, MaxLowerLevel);
55
+  return EbmlElement::FindNextElement(Stream, Context, UpperLevel, MaxDataSize, AllowDummyElt, MaxLowerLevel);
56
 }
57
 
58
 END_LIBEBML_NAMESPACE
59
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlString.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlString.cpp Changed
201
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id$
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #include <lgpl/cassert>
35
 
36
@@ -40,86 +40,85 @@
37
 START_LIBEBML_NAMESPACE
38
 
39
 EbmlString::EbmlString()
40
- :EbmlElement(0, false)
41
+  :EbmlElement(0, false)
42
 {
43
-   SetDefaultSize(0);
44
-/* done automatically  
45
-   SetSize_(Value.length());
46
-   if (GetDefaultSize() > GetSize())
47
-       SetSize_(GetDefaultSize());*/
48
+  SetDefaultSize(0);
49
+/* done automatically
50
+  SetSize_(Value.length());
51
+  if (GetDefaultSize() > GetSize())
52
+    SetSize_(GetDefaultSize());*/
53
 }
54
 
55
 EbmlString::EbmlString(const ccc::string & aDefaultValue)
56
- :EbmlElement(0, true), Value(aDefaultValue), DefaultValue(aDefaultValue)
57
+  :EbmlElement(0, true), Value(aDefaultValue), DefaultValue(aDefaultValue)
58
 {
59
-   SetDefaultSize(0);
60
-   SetDefaultIsSet();
61
-/* done automatically  
62
-   SetSize_(Value.length());
63
-   if (GetDefaultSize() > GetSize())
64
-       SetSize_(GetDefaultSize());*/
65
+  SetDefaultSize(0);
66
+  SetDefaultIsSet();
67
+/* done automatically
68
+  SetSize_(Value.length());
69
+  if (GetDefaultSize() > GetSize())
70
+    SetSize_(GetDefaultSize());*/
71
 }
72
 
73
 /*!
74
-   \todo Cloning should be on the same exact type !
75
+  \todo Cloning should be on the same exact type !
76
 */
77
 EbmlString::EbmlString(const EbmlString & ElementToClone)
78
- :EbmlElement(ElementToClone)
79
- ,Value(ElementToClone.Value)
80
- ,DefaultValue(ElementToClone.DefaultValue)
81
+  :EbmlElement(ElementToClone)
82
+  ,Value(ElementToClone.Value)
83
+  ,DefaultValue(ElementToClone.DefaultValue)
84
 {
85
 }
86
 
87
 void EbmlString::SetDefaultValue(ccc::string & aValue)
88
 {
89
-    assert(!DefaultISset());
90
-    DefaultValue = aValue;
91
-    SetDefaultIsSet();
92
+  assert(!DefaultISset());
93
+  DefaultValue = aValue;
94
+  SetDefaultIsSet();
95
 }
96
 
97
 const ref::string & EbmlString::DefaultVal() const
98
 {
99
-    assert(DefaultISset());
100
-    return DefaultValue;
101
+  assert(DefaultISset());
102
+  return DefaultValue;
103
 }
104
 
105
 
106
 /*!
107
-   \todo handle exception on errors
108
+  \todo handle exception on errors
109
 */
110
 filepos_t EbmlString::RenderData(IOCallback & output, bool /* bForceRender */, bool /* bWithDefault */)
111
 {
112
-   filepos_t Result;
113
-   output.writeFully(Value.c_str(), Value.length());
114
-   Result = Value.length();
115
-   
116
-   if (Result < GetDefaultSize()) {
117
-       // pad the rest with 0
118
-       binary *Pad = new binary[GetDefaultSize() - Result];
119
-       if (Pad == NULL)
120
-       {
121
-           return Result;
122
-       }
123
-       memset(Pad, 0x00, GetDefaultSize() - Result);
124
-       output.writeFully(Pad, GetDefaultSize() - Result);
125
-       Result = GetDefaultSize();
126
-       delete [] Pad;
127
-   }
128
-   
129
-   return Result;
130
+  filepos_t Result;
131
+  output.writeFully(Value.c_str(), Value.length());
132
+  Result = Value.length();
133
+
134
+  if (Result < GetDefaultSize()) {
135
+    // pad the rest with 0
136
+    binary *Pad = new (std::nothrow) binary[GetDefaultSize() - Result];
137
+    if (Pad == NULL) {
138
+      return Result;
139
+    }
140
+    memset(Pad, 0x00, GetDefaultSize() - Result);
141
+    output.writeFully(Pad, GetDefaultSize() - Result);
142
+    Result = GetDefaultSize();
143
+    delete [] Pad;
144
+  }
145
+
146
+  return Result;
147
 }
148
 
149
 EbmlString::operator const ref::string &() const {return Value;}
150
 
151
 EbmlString & EbmlString::operator=(const ccc::string & NewString)
152
 {
153
-   Value = NewString;
154
-   SetValueIsSet();
155
-/* done automatically  
156
-   SetSize_(Value.length());
157
-   if (GetDefaultSize() > GetSize())
158
-       SetSize_(GetDefaultSize());*/
159
-   return *this;
160
+  Value = NewString;
161
+  SetValueIsSet();
162
+/* done automatically
163
+  SetSize_(Value.length());
164
+  if (GetDefaultSize() > GetSize())
165
+    SetSize_(GetDefaultSize());*/
166
+  return *this;
167
 }
168
 
169
 EbmlString &EbmlString::SetValue(ccc::string const &NewValue) {
170
@@ -132,43 +131,42 @@
171
 
172
 uint64 EbmlString::UpdateSize(bool bWithDefault, bool /* bForceRender */)
173
 {
174
-   if (!bWithDefault && IsDefaultValue())
175
-       return 0;
176
-
177
-   if (Value.length() < GetDefaultSize()) {
178
-       SetSize_(GetDefaultSize());
179
-   } else {
180
-       SetSize_(Value.length());
181
-   }
182
-   return GetSize();
183
+  if (!bWithDefault && IsDefaultValue())
184
+    return 0;
185
+
186
+  if (Value.length() < GetDefaultSize()) {
187
+    SetSize_(GetDefaultSize());
188
+  } else {
189
+    SetSize_(Value.length());
190
+  }
191
+  return GetSize();
192
 }
193
 
194
 #ifndef EBML_NO_READ
195
 filepos_t EbmlString::ReadData(IOCallback & input, ScopeMode ReadFully)
196
 {
197
-   if (ReadFully != SCOPE_NO_DATA)
198
-   {
199
-       if (GetSize() == 0) {
200
-           Value = "";
201
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlSubHead.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlSubHead.cpp Changed
36
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlSubHead.cpp 639 2004-07-09 20:59:14Z mosu $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id: EbmlSubHead.cpp 639 2004-07-09 20:59:14Z mosu $
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #include "ebml/EbmlSubHead.h"
35
 #include "ebml/EbmlContexts.h"
36
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlUInteger.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlUInteger.cpp Changed
201
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,10 +29,10 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Moritz Bunkus <moritz @ bunkus.org>
31
+  \file
32
+  \version \$Id$
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Moritz Bunkus <moritz @ bunkus.org>
35
 */
36
 #include <lgpl/cassert>
37
 
38
@@ -41,33 +41,33 @@
39
 START_LIBEBML_NAMESPACE
40
 
41
 EbmlUInteger::EbmlUInteger()
42
- :EbmlElement(DEFAULT_UINT_SIZE, false)
43
+  :EbmlElement(DEFAULT_UINT_SIZE, false)
44
 {}
45
 
46
 EbmlUInteger::EbmlUInteger(uint64 aDefaultValue)
47
- :EbmlElement(DEFAULT_UINT_SIZE, true), Value(aDefaultValue), DefaultValue(aDefaultValue)
48
+  :EbmlElement(DEFAULT_UINT_SIZE, true), Value(aDefaultValue), DefaultValue(aDefaultValue)
49
 {
50
-   SetDefaultIsSet();
51
+  SetDefaultIsSet();
52
 }
53
 
54
 EbmlUInteger::EbmlUInteger(const EbmlUInteger & ElementToClone)
55
- :EbmlElement(ElementToClone)
56
- ,Value(ElementToClone.Value)
57
- ,DefaultValue(ElementToClone.DefaultValue)
58
+  :EbmlElement(ElementToClone)
59
+  ,Value(ElementToClone.Value)
60
+  ,DefaultValue(ElementToClone.DefaultValue)
61
 {
62
 }
63
 
64
 void EbmlUInteger::SetDefaultValue(uint64 aValue)
65
 {
66
-    assert(!DefaultISset());
67
-    DefaultValue = aValue;
68
-    SetDefaultIsSet();
69
+  assert(!DefaultISset());
70
+  DefaultValue = aValue;
71
+  SetDefaultIsSet();
72
 }
73
 
74
 uint64 EbmlUInteger::DefaultVal() const
75
 {
76
-    assert(DefaultISset());
77
-    return DefaultValue;
78
+  assert(DefaultISset());
79
+  return DefaultValue;
80
 }
81
 
82
 EbmlUInteger::operator uint8()  const {return uint8(Value); }
83
@@ -82,83 +82,81 @@
84
 }
85
 
86
 /*!
87
-   \todo handle exception on errors
88
+  \todo handle exception on errors
89
 */
90
 filepos_t EbmlUInteger::RenderData(IOCallback & output, bool /* bForceRender */, bool /* bWithDefault */)
91
 {
92
-   binary FinalData[8]; // we don't handle more than 64 bits integers
93
-   
94
-   if (GetSizeLength() > 8)
95
-       return 0; // integer bigger coded on more than 64 bits are not supported
96
-   
97
-   uint64 TempValue = Value;
98
-   for (unsigned int i=0; i<GetSize();i++) {
99
-       FinalData[GetSize()-i-1] = TempValue & 0xFF;
100
-       TempValue >>= 8;
101
-   }
102
-   
103
-   output.writeFully(FinalData,GetSize());
104
-
105
-   return GetSize();
106
+  binary FinalData[8]; // we don't handle more than 64 bits integers
107
+
108
+  if (GetSizeLength() > 8)
109
+    return 0; // integer bigger coded on more than 64 bits are not supported
110
+
111
+  uint64 TempValue = Value;
112
+  for (unsigned int i=0; i<GetSize();i++) {
113
+    FinalData[GetSize()-i-1] = TempValue & 0xFF;
114
+    TempValue >>= 8;
115
+  }
116
+
117
+  output.writeFully(FinalData,GetSize());
118
+
119
+  return GetSize();
120
 }
121
 
122
 uint64 EbmlUInteger::UpdateSize(bool bWithDefault, bool /* bForceRender */)
123
 {
124
-   if (!bWithDefault && IsDefaultValue())
125
-       return 0;
126
-
127
-   if (Value <= 0xFF) {
128
-       SetSize_(1);
129
-   } else if (Value <= 0xFFFF) {
130
-       SetSize_(2);
131
-   } else if (Value <= 0xFFFFFF) {
132
-       SetSize_(3);
133
-   } else if (Value <= 0xFFFFFFFF) {
134
-       SetSize_(4);
135
-   } else if (Value <= EBML_PRETTYLONGINT(0xFFFFFFFFFF)) {
136
-       SetSize_(5);
137
-   } else if (Value <= EBML_PRETTYLONGINT(0xFFFFFFFFFFFF)) {
138
-       SetSize_(6);
139
-   } else if (Value <= EBML_PRETTYLONGINT(0xFFFFFFFFFFFFFF)) {
140
-       SetSize_(7);
141
-   } else {
142
-       SetSize_(8);
143
-   }
144
-
145
-   if (GetDefaultSize() > GetSize()) {
146
-       SetSize_(GetDefaultSize());
147
-   }
148
-
149
-   return GetSize();
150
+  if (!bWithDefault && IsDefaultValue())
151
+    return 0;
152
+
153
+  if (Value <= 0xFF) {
154
+    SetSize_(1);
155
+  } else if (Value <= 0xFFFF) {
156
+    SetSize_(2);
157
+  } else if (Value <= 0xFFFFFF) {
158
+    SetSize_(3);
159
+  } else if (Value <= 0xFFFFFFFF) {
160
+    SetSize_(4);
161
+  } else if (Value <= EBML_PRETTYLONGINT(0xFFFFFFFFFF)) {
162
+    SetSize_(5);
163
+  } else if (Value <= EBML_PRETTYLONGINT(0xFFFFFFFFFFFF)) {
164
+    SetSize_(6);
165
+  } else if (Value <= EBML_PRETTYLONGINT(0xFFFFFFFFFFFFFF)) {
166
+    SetSize_(7);
167
+  } else {
168
+    SetSize_(8);
169
+  }
170
+
171
+  if (GetDefaultSize() > GetSize()) {
172
+    SetSize_(GetDefaultSize());
173
+  }
174
+
175
+  return GetSize();
176
 }
177
 
178
 #ifndef EBML_NO_READ
179
 filepos_t EbmlUInteger::ReadData(IOCallback & input, ScopeMode ReadFully)
180
 {
181
-   if (ReadFully != SCOPE_NO_DATA)
182
-   {
183
-       binary Buffer[8];
184
-       input.readFully(Buffer, GetSize());
185
-       Value = 0;
186
-       
187
-       for (unsigned int i=0; i<GetSize(); i++)
188
-       {
189
-           Value <<= 8;
190
-           Value |= Buffer[i];
191
-       }
192
-       SetValueIsSet();
193
-   }
194
-
195
-   return GetSize();
196
+  if (ReadFully != SCOPE_NO_DATA) {
197
+    binary Buffer[8];
198
+    input.readFully(Buffer, GetSize());
199
+    Value = 0;
200
+
201
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlUnicodeString.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlUnicodeString.cpp Changed
201
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,10 +29,10 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id$
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Jory Stone       <jcsston @ toughguy.net>
31
+  \file
32
+  \version \$Id$
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Jory Stone       <jcsston @ toughguy.net>
35
 */
36
 
37
 #include <lgpl/cassert>
38
@@ -47,43 +47,58 @@
39
 
40
 // ===================== UTFstring class ===================
41
 
42
+static unsigned int UTFCharLength(uint8 lead)
43
+{
44
+  if (lead < 0x80)
45
+    return 1;
46
+  else if ((lead >> 5) == 0x6)
47
+    return 2;
48
+  else if ((lead >> 4) == 0xe)
49
+    return 3;
50
+  else if ((lead >> 3) == 0x1e)
51
+    return 4;
52
+  else
53
+    // Invalid size?
54
+    return 0;
55
+}
56
+
57
 UTFstring::UTFstring()
58
-   :_Length(0)
59
-   ,_Data(NULL)
60
+  :_Length(0)
61
+  ,_Data(NULL)
62
 {}
63
 
64
 UTFstring::UTFstring(const wchar_t * _aBuf)
65
-   :_Length(0)
66
-   ,_Data(NULL)
67
+  :_Length(0)
68
+  ,_Data(NULL)
69
 {
70
-   *this = _aBuf;
71
+  *this = _aBuf;
72
 }
73
 
74
 #if 0
75
 UTFstring::UTFstring(std::wstring const &_aBuf)
76
-   :_Length(0)
77
-   ,_Data(NULL)
78
+  :_Length(0)
79
+  ,_Data(NULL)
80
 {
81
-   *this = _aBuf.c_str();
82
+  *this = _aBuf.c_str();
83
 }
84
 #endif
85
 
86
 UTFstring::~UTFstring()
87
 {
88
-   delete [] _Data;
89
+  delete [] _Data;
90
 }
91
 
92
 UTFstring::UTFstring(const UTFstring & _aBuf)
93
-   :_Length(0)
94
-   ,_Data(NULL)
95
+  :_Length(0)
96
+  ,_Data(NULL)
97
 {
98
-   *this = _aBuf.c_str();
99
+  *this = _aBuf.c_str();
100
 }
101
 
102
 UTFstring & UTFstring::operator=(const UTFstring & _aBuf)
103
 {
104
-   *this = _aBuf.c_str();
105
-   return *this;
106
+  *this = _aBuf.c_str();
107
+  return *this;
108
 }
109
 
110
 UTFstring::operator const wchar_t*() const {return _Data;}
111
@@ -91,173 +106,171 @@
112
 
113
 UTFstring & UTFstring::operator=(const wchar_t * _aBuf)
114
 {
115
-   delete [] _Data;
116
-   if (_aBuf == NULL) {
117
-       _Data = new wchar_t[1];
118
-       _Data[0] = 0;
119
-       UpdateFromUCS2();
120
-       return *this;
121
-   }
122
-
123
-   size_t aLen;
124
-   for (aLen=0; _aBuf[aLen] != 0; aLen++);
125
-   _Length = aLen;
126
-   _Data = new wchar_t[_Length+1];
127
-   for (aLen=0; _aBuf[aLen] != 0; aLen++) {
128
-       _Data[aLen] = _aBuf[aLen];
129
-   }
130
-   _Data[aLen] = 0;
131
-   UpdateFromUCS2();
132
-   return *this;
133
+  delete [] _Data;
134
+  if (_aBuf == NULL) {
135
+    _Data = new wchar_t[1];
136
+    _Data[0] = 0;
137
+    UpdateFromUCS2();
138
+    return *this;
139
+  }
140
+
141
+  size_t aLen;
142
+  for (aLen=0; _aBuf[aLen] != 0; aLen++);
143
+  _Length = aLen;
144
+  _Data = new wchar_t[_Length+1];
145
+  for (aLen=0; _aBuf[aLen] != 0; aLen++) {
146
+    _Data[aLen] = _aBuf[aLen];
147
+  }
148
+  _Data[aLen] = 0;
149
+  UpdateFromUCS2();
150
+  return *this;
151
 }
152
 
153
 UTFstring & UTFstring::operator=(wchar_t _aChar)
154
 {
155
-   delete [] _Data;
156
-   _Data = new wchar_t[2];
157
-   _Length = 1;
158
-   _Data[0] = _aChar;
159
-   _Data[1] = 0;
160
-   UpdateFromUCS2();
161
-   return *this;
162
+  delete [] _Data;
163
+  _Data = new wchar_t[2];
164
+  _Length = 1;
165
+  _Data[0] = _aChar;
166
+  _Data[1] = 0;
167
+  UpdateFromUCS2();
168
+  return *this;
169
 }
170
 
171
 bool UTFstring::operator==(const UTFstring& _aStr) const
172
 {
173
-   if ((_Data == NULL) && (_aStr._Data == NULL))
174
-       return true;
175
-   if ((_Data == NULL) || (_aStr._Data == NULL))
176
-       return false;
177
-   return wcscmp_internal(_Data, _aStr._Data);
178
+  if ((_Data == NULL) && (_aStr._Data == NULL))
179
+    return true;
180
+  if ((_Data == NULL) || (_aStr._Data == NULL))
181
+    return false;
182
+  return wcscmp_internal(_Data, _aStr._Data);
183
 }
184
 
185
 void UTFstring::SetUTF8(const ccc::string & _aStr)
186
 {
187
-   UTF8string = _aStr;
188
-   UpdateFromUTF8();
189
+  UTF8string = _aStr;
190
+  UpdateFromUTF8();
191
 }
192
 
193
 /*!
194
-   \see RFC 2279
195
+  \see RFC 2279
196
 */
197
 void UTFstring::UpdateFromUTF8()
198
 {
199
-   delete [] _Data;
200
-   // find the size of the final UCS-2 string
201
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlVersion.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlVersion.cpp Changed
33
 
1
@@ -19,9 +19,9 @@
2
 **
3
 ** You should have received a copy of the GNU Lesser General Public
4
 ** License along with this library; if not, write to the Free Software
5
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
6
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
7
 **
8
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
9
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
10
 **
11
 ** Contact license@matroska.org if any conditions of this licensing are
12
 ** not clear to you.
13
@@ -29,15 +29,15 @@
14
 **********************************************************************/
15
 
16
 /*!
17
-   \file
18
-   \version \$Id: EbmlVersion.cpp 639 2004-07-09 20:59:14Z mosu $
19
-   \author Steve Lhomme     <robux4 @ users.sf.net>
20
+  \file
21
+  \version \$Id: EbmlVersion.cpp 639 2004-07-09 20:59:14Z mosu $
22
+  \author Steve Lhomme     <robux4 @ users.sf.net>
23
 */
24
 
25
 #include "ebml/EbmlVersion.h"
26
 
27
 START_LIBEBML_NAMESPACE
28
 
29
-const ccc::string EbmlCodeVersion = "1.3.0";
30
+const ccc::string EbmlCodeVersion = "1.3.3";
31
 
32
 END_LIBEBML_NAMESPACE
33
makemkv-oss-1.9.5.tar.xz/libebml/src/EbmlVoid.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/EbmlVoid.cpp Changed
201
 
1
@@ -11,17 +11,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -29,9 +29,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: EbmlVoid.cpp 1232 2005-10-15 15:56:52Z robux4 $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
+  \file
31
+  \version \$Id: EbmlVoid.cpp 1232 2005-10-15 15:56:52Z robux4 $
32
+  \author Steve Lhomme     <robux4 @ users.sf.net>
33
 */
34
 #include "ebml/EbmlVoid.h"
35
 #include "ebml/EbmlContexts.h"
36
@@ -42,97 +42,96 @@
37
 
38
 EbmlVoid::EbmlVoid()
39
 {
40
-   SetValueIsSet();
41
+  SetValueIsSet();
42
 }
43
 
44
 filepos_t EbmlVoid::RenderData(IOCallback & output, bool /* bForceRender */, bool /* bWithDefault */)
45
 {
46
-   // write dummy data by 4KB chunks
47
-   static binary DummyBuf[4*1024];
48
-
49
-   uint64 SizeToWrite = GetSize();
50
-   while (SizeToWrite > 4*1024)
51
-   {
52
-       output.writeFully(DummyBuf, 4*1024);
53
-       SizeToWrite -= 4*1024;
54
-   }
55
-   output.writeFully(DummyBuf, SizeToWrite);
56
-   return GetSize();
57
+  // write dummy data by 4KB chunks
58
+  static binary DummyBuf[4*1024];
59
+
60
+  uint64 SizeToWrite = GetSize();
61
+  while (SizeToWrite > 4*1024) {
62
+    output.writeFully(DummyBuf, 4*1024);
63
+    SizeToWrite -= 4*1024;
64
+  }
65
+  output.writeFully(DummyBuf, SizeToWrite);
66
+  return GetSize();
67
 }
68
 
69
 uint64 EbmlVoid::ReplaceWith(EbmlElement & EltToReplaceWith, IOCallback & output, bool ComeBackAfterward, bool bWithDefault)
70
 {
71
-   EltToReplaceWith.UpdateSize(bWithDefault);
72
-   if (HeadSize() + GetSize() < EltToReplaceWith.GetSize() + EltToReplaceWith.HeadSize()) {
73
-       // the element can't be written here !
74
-       return INVALID_FILEPOS_T;
75
-   }
76
-   if (HeadSize() + GetSize() - EltToReplaceWith.GetSize() - EltToReplaceWith.HeadSize() == 1) {
77
-       // there is not enough space to put a filling element
78
-       return INVALID_FILEPOS_T;
79
-   }
80
-
81
-   uint64 CurrentPosition = output.getFilePointer();
82
-
83
-   output.setFilePointer(GetElementPosition());
84
-   EltToReplaceWith.Render(output, bWithDefault);
85
-
86
-   if (HeadSize() + GetSize() - EltToReplaceWith.GetSize() - EltToReplaceWith.HeadSize() > 1) {
87
-     // fill the rest with another void element
88
-     EbmlVoid aTmp;
89
-     aTmp.SetSize_(HeadSize() + GetSize() - EltToReplaceWith.GetSize() - EltToReplaceWith.HeadSize() - 1); // 1 is the length of the Void ID
90
-     int HeadBefore = aTmp.HeadSize();
91
-     aTmp.SetSize_(aTmp.GetSize() - CodedSizeLength(aTmp.GetSize(), aTmp.GetSizeLength(), aTmp.IsFiniteSize()));
92
-     int HeadAfter = aTmp.HeadSize();
93
-     if (HeadBefore != HeadAfter) {
94
-         aTmp.SetSizeLength(CodedSizeLength(aTmp.GetSize(), aTmp.GetSizeLength(), aTmp.IsFiniteSize()) - (HeadAfter - HeadBefore));
95
-     }
96
-     aTmp.RenderHead(output, false, bWithDefault); // the rest of the data is not rewritten
97
-   }
98
-
99
-   if (ComeBackAfterward) {
100
-       output.setFilePointer(CurrentPosition);
101
-   }
102
-
103
-   return GetSize() + HeadSize();
104
+  EltToReplaceWith.UpdateSize(bWithDefault);
105
+  if (HeadSize() + GetSize() < EltToReplaceWith.GetSize() + EltToReplaceWith.HeadSize()) {
106
+    // the element can't be written here !
107
+    return INVALID_FILEPOS_T;
108
+  }
109
+  if (HeadSize() + GetSize() - EltToReplaceWith.GetSize() - EltToReplaceWith.HeadSize() == 1) {
110
+    // there is not enough space to put a filling element
111
+    return INVALID_FILEPOS_T;
112
+  }
113
+
114
+  uint64 CurrentPosition = output.getFilePointer();
115
+
116
+  output.setFilePointer(GetElementPosition());
117
+  EltToReplaceWith.Render(output, bWithDefault);
118
+
119
+  if (HeadSize() + GetSize() - EltToReplaceWith.GetSize() - EltToReplaceWith.HeadSize() > 1) {
120
+    // fill the rest with another void element
121
+    EbmlVoid aTmp;
122
+    aTmp.SetSize_(HeadSize() + GetSize() - EltToReplaceWith.GetSize() - EltToReplaceWith.HeadSize() - 1); // 1 is the length of the Void ID
123
+    int HeadBefore = aTmp.HeadSize();
124
+    aTmp.SetSize_(aTmp.GetSize() - CodedSizeLength(aTmp.GetSize(), aTmp.GetSizeLength(), aTmp.IsFiniteSize()));
125
+    int HeadAfter = aTmp.HeadSize();
126
+    if (HeadBefore != HeadAfter) {
127
+      aTmp.SetSizeLength(CodedSizeLength(aTmp.GetSize(), aTmp.GetSizeLength(), aTmp.IsFiniteSize()) - (HeadAfter - HeadBefore));
128
+    }
129
+    aTmp.RenderHead(output, false, bWithDefault); // the rest of the data is not rewritten
130
+  }
131
+
132
+  if (ComeBackAfterward) {
133
+    output.setFilePointer(CurrentPosition);
134
+  }
135
+
136
+  return GetSize() + HeadSize();
137
 }
138
 
139
 uint64 EbmlVoid::Overwrite(const EbmlElement & EltToVoid, IOCallback & output, bool ComeBackAfterward, bool bWithDefault)
140
 {
141
-// EltToVoid.UpdateSize(bWithDefault);
142
-   if (EltToVoid.GetElementPosition() == 0) {
143
-       // this element has never been written
144
-       return 0;
145
-   }
146
-   if (EltToVoid.GetSize() + EltToVoid.HeadSize() <2) {
147
-       // the element can't be written here !
148
-       return 0;
149
-   }
150
-
151
-   uint64 CurrentPosition = output.getFilePointer();
152
-
153
-   output.setFilePointer(EltToVoid.GetElementPosition());
154
-
155
-   // compute the size of the voided data based on the original one
156
-   SetSize(EltToVoid.GetSize() + EltToVoid.HeadSize() - 1); // 1 for the ID
157
-   SetSize(GetSize() - CodedSizeLength(GetSize(), GetSizeLength(), IsFiniteSize()));
158
-   // make sure we handle even the strange cases
159
-   //uint32 A1 = GetSize() + HeadSize();
160
-   //uint32 A2 = EltToVoid.GetSize() + EltToVoid.HeadSize();
161
-   if (GetSize() + HeadSize() != EltToVoid.GetSize() + EltToVoid.HeadSize()) {
162
-       SetSize(GetSize()-1);
163
-       SetSizeLength(CodedSizeLength(GetSize(), GetSizeLength(), IsFiniteSize()) + 1);
164
-   }
165
-
166
-   if (GetSize() != 0) {
167
-       RenderHead(output, false, bWithDefault); // the rest of the data is not rewritten
168
-   }
169
-
170
-   if (ComeBackAfterward) {
171
-       output.setFilePointer(CurrentPosition);
172
-   }
173
-
174
-   return EltToVoid.GetSize() + EltToVoid.HeadSize();
175
+  //  EltToVoid.UpdateSize(bWithDefault);
176
+  if (EltToVoid.GetElementPosition() == 0) {
177
+    // this element has never been written
178
+    return 0;
179
+  }
180
+  if (EltToVoid.GetSize() + EltToVoid.HeadSize() <2) {
181
+    // the element can't be written here !
182
+    return 0;
183
+  }
184
+
185
+  uint64 CurrentPosition = output.getFilePointer();
186
+
187
+  output.setFilePointer(EltToVoid.GetElementPosition());
188
+
189
+  // compute the size of the voided data based on the original one
190
+  SetSize(EltToVoid.GetSize() + EltToVoid.HeadSize() - 1); // 1 for the ID
191
+  SetSize(GetSize() - CodedSizeLength(GetSize(), GetSizeLength(), IsFiniteSize()));
192
+  // make sure we handle even the strange cases
193
+  //uint32 A1 = GetSize() + HeadSize();
194
+  //uint32 A2 = EltToVoid.GetSize() + EltToVoid.HeadSize();
195
+  if (GetSize() + HeadSize() != EltToVoid.GetSize() + EltToVoid.HeadSize()) {
196
+    SetSize(GetSize()-1);
197
+    SetSizeLength(CodedSizeLength(GetSize(), GetSizeLength(), IsFiniteSize()) + 1);
198
+  }
199
+
200
+  if (GetSize() != 0) {
201
makemkv-oss-1.9.5.tar.xz/libebml/src/IOCallback.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/IOCallback.cpp Changed
93
 
1
@@ -9,17 +9,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -27,10 +27,10 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: IOCallback.cpp 639 2004-07-09 20:59:14Z mosu $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Moritz Bunkus <moritz @ bunkus.org>
31
+  \file
32
+  \version \$Id: IOCallback.cpp 639 2004-07-09 20:59:14Z mosu $
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Moritz Bunkus <moritz @ bunkus.org>
35
 */
36
 
37
 #if !defined(__GNUC__) || (__GNUC__ > 2)
38
@@ -48,37 +48,35 @@
39
 
40
 void IOCallback::writeFully(const void*Buffer,size_t Size)
41
 {
42
-   if (Size == 0)
43
-       return;
44
+  if (Size == 0)
45
+    return;
46
 
47
-   if (Buffer == NULL)
48
-       throw;
49
+  if (Buffer == NULL)
50
+    throw;
51
 
52
-   if(write(Buffer,Size) != Size)
53
-   {
54
-#if 1 //!defined(__GNUC__) || (__GNUC__ > 2)
55
-       //stringstream Msg;
56
-       //Msg<<"EOF in writeFully("<<Buffer<<","<<Size<<")";
57
-       throw mkv_error_exception("$EOF in writeFully");
58
+  if(write(Buffer,Size) != Size) {
59
+#if !defined(__GNUC__) || (__GNUC__ > 2)
60
+    //stringstream Msg;
61
+    //Msg<<"EOF in writeFully("<<Buffer<<","<<Size<<")";
62
+    throw mkv_error_exception("$EOF in writeFully");
63
 #endif // GCC2
64
-   }
65
+  }
66
 }
67
 
68
 
69
 #ifndef EBML_NO_READ
70
 void IOCallback::readFully(void*Buffer,size_t Size)
71
 {
72
-   if(Buffer == NULL)
73
-       throw;
74
+  if(Buffer == NULL)
75
+    throw;
76
 
77
-   if(read(Buffer,Size) != Size)
78
-   {
79
+  if(read(Buffer,Size) != Size) {
80
 #if !defined(__GNUC__) || (__GNUC__ > 2)
81
-       //stringstream Msg;
82
-       //Msg<<"EOF in readFully("<<Buffer<<","<<Size<<")";
83
-       throw runtime_error("EOF in readFully");
84
+    //stringstream Msg;
85
+    //Msg<<"EOF in readFully("<<Buffer<<","<<Size<<")";
86
+    throw runtime_error("EOF in readFully");
87
 #endif // GCC2
88
-   }
89
+  }
90
 }
91
 #endif
92
 
93
makemkv-oss-1.9.5.tar.xz/libebml/src/MemIOCallback.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/MemIOCallback.cpp Changed
177
 
1
@@ -9,17 +9,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -27,9 +27,9 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: MemIOCallback.cpp 693 2004-07-31 08:56:28Z robux4 $
29
-   \author Jory Stone <jcsston @ toughguy.net>
30
+  \file
31
+  \version \$Id: MemIOCallback.cpp 693 2004-07-31 08:56:28Z robux4 $
32
+  \author Jory Stone <jcsston @ toughguy.net>
33
 */
34
 
35
 #include "ebml/MemIOCallback.h"
36
@@ -40,86 +40,83 @@
37
 
38
 MemIOCallback::MemIOCallback(uint64 DefaultSize)
39
 {
40
-   //The default size of the buffer is 128 bytes
41
-   dataBuffer = (binary *)malloc(DefaultSize);
42
-   if (dataBuffer == NULL) {
43
-       mOk = false;
44
-       //std::stringstream Msg;
45
-       //Msg << "Failed to alloc memory block of size ";
46
-// not working with VC6        Msg << DefaultSize;
47
-       mLastErrorStr = "Failed to alloc memory block";
48
-       return;
49
-   }
50
-   
51
-   dataBufferMemorySize = DefaultSize;
52
-   dataBufferPos = 0;
53
-   dataBufferTotalSize = 0;
54
-   mOk = true;
55
+  //The default size of the buffer is 128 bytes
56
+  dataBuffer = (binary *)malloc(DefaultSize);
57
+  if (dataBuffer == NULL) {
58
+    mOk = false;
59
+    //std::stringstream Msg;
60
+    //Msg << "Failed to alloc memory block of size ";
61
+    // not working with VC6    Msg << DefaultSize;
62
+    mLastErrorStr = "Failed to alloc memory block";
63
+    return;
64
+  }
65
+
66
+  dataBufferMemorySize = DefaultSize;
67
+  dataBufferPos = 0;
68
+  dataBufferTotalSize = 0;
69
+  mOk = true;
70
 }
71
 
72
 MemIOCallback::~MemIOCallback()
73
 {
74
-   if (dataBuffer != NULL)
75
-       free(dataBuffer);
76
+  if (dataBuffer != NULL)
77
+    free(dataBuffer);
78
 }
79
 
80
 uint32 MemIOCallback::read(void *Buffer, size_t Size)
81
 {
82
-   if (Buffer == NULL || Size < 1)
83
-       return 0;
84
-   //If the size is larger than than the amount left in the buffer
85
-   if (Size + dataBufferPos > dataBufferTotalSize)
86
-   {
87
-       //We will only return the remaining data
88
-       memcpy(Buffer, dataBuffer + dataBufferPos, dataBufferTotalSize - dataBufferPos);
89
-        uint64 oldDataPos = dataBufferPos;
90
-       dataBufferPos = dataBufferTotalSize;
91
-       return dataBufferTotalSize - oldDataPos;
92
-   }
93
-       
94
-   //Well... We made it here, so do a quick and simple copy
95
-   memcpy(Buffer, dataBuffer+dataBufferPos, Size);
96
-   dataBufferPos += Size;
97
+  if (Buffer == NULL || Size < 1)
98
+    return 0;
99
+  //If the size is larger than than the amount left in the buffer
100
+  if (Size + dataBufferPos > dataBufferTotalSize) {
101
+    //We will only return the remaining data
102
+    memcpy(Buffer, dataBuffer + dataBufferPos, dataBufferTotalSize - dataBufferPos);
103
+    uint64 oldDataPos = dataBufferPos;
104
+    dataBufferPos = dataBufferTotalSize;
105
+    return dataBufferTotalSize - oldDataPos;
106
+  }
107
+
108
+  //Well... We made it here, so do a quick and simple copy
109
+  memcpy(Buffer, dataBuffer+dataBufferPos, Size);
110
+  dataBufferPos += Size;
111
 
112
-   return Size;
113
+  return Size;
114
 }
115
 
116
 void MemIOCallback::setFilePointer(int64 Offset, seek_mode Mode)
117
 {
118
-   if (Mode == seek_beginning)
119
-       dataBufferPos = Offset;
120
-   else if (Mode == seek_current)
121
-       dataBufferPos = dataBufferPos + Offset;
122
-   else if (Mode == seek_end)
123
-       dataBufferPos = dataBufferTotalSize + Offset;
124
+  if (Mode == seek_beginning)
125
+    dataBufferPos = Offset;
126
+  else if (Mode == seek_current)
127
+    dataBufferPos = dataBufferPos + Offset;
128
+  else if (Mode == seek_end)
129
+    dataBufferPos = dataBufferTotalSize + Offset;
130
 }
131
 
132
 size_t MemIOCallback::write(const void *Buffer, size_t Size)
133
 {
134
-   if (dataBufferMemorySize < dataBufferPos + Size)
135
-   {
136
-       //We need more memory!
137
-       dataBuffer = (binary *)realloc((void *)dataBuffer, dataBufferPos + Size);       
138
-   }
139
-   memcpy(dataBuffer+dataBufferPos, Buffer, Size);
140
-   dataBufferPos += Size;
141
-   if (dataBufferPos > dataBufferTotalSize)
142
-       dataBufferTotalSize = dataBufferPos;
143
+  if (dataBufferMemorySize < dataBufferPos + Size) {
144
+    //We need more memory!
145
+    dataBuffer = (binary *)realloc((void *)dataBuffer, dataBufferPos + Size);
146
+  }
147
+  memcpy(dataBuffer+dataBufferPos, Buffer, Size);
148
+  dataBufferPos += Size;
149
+  if (dataBufferPos > dataBufferTotalSize)
150
+    dataBufferTotalSize = dataBufferPos;
151
 
152
-   return Size;
153
+  return Size;
154
 }
155
 
156
 #ifndef EBML_NO_READ
157
 uint32 MemIOCallback::write(IOCallback & IOToRead, size_t Size)
158
 {
159
-   if (dataBufferMemorySize < dataBufferPos + Size)
160
-   {
161
-       //We need more memory!
162
-       dataBuffer = (binary *)realloc((void *)dataBuffer, dataBufferPos + Size);       
163
-   }
164
-   IOToRead.readFully(&dataBuffer[dataBufferPos], Size);
165
-   dataBufferTotalSize = Size;
166
-   return Size;
167
+  if (dataBufferMemorySize < dataBufferPos + Size) {
168
+    //We need more memory!
169
+    dataBuffer = (binary *)realloc((void *)dataBuffer, dataBufferPos + Size);
170
+  }
171
+  IOToRead.readFully(&dataBuffer[dataBufferPos], Size);
172
+  dataBufferTotalSize = Size;
173
+  return Size;
174
 }
175
 #endif
176
 
177
makemkv-oss-1.9.5.tar.xz/libebml/src/StdIOCallback.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/StdIOCallback.cpp Changed
201
 
1
@@ -9,17 +9,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -27,10 +27,10 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: StdIOCallback.cpp 1298 2008-02-21 22:14:18Z mosu $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Moritz Bunkus <moritz @ bunkus.org>
31
+  \file
32
+  \version \$Id: StdIOCallback.cpp 1298 2008-02-21 22:14:18Z mosu $
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Moritz Bunkus <moritz @ bunkus.org>
35
 */
36
 
37
 #include <lgpl/cassert>
38
@@ -48,154 +48,146 @@
39
 START_LIBEBML_NAMESPACE
40
 
41
 CRTError::CRTError(int nError, const std::string & Description)
42
-   :std::runtime_error(Description+": "+strerror(nError))
43
-   ,Error(nError)
44
+  :std::runtime_error(Description+": "+strerror(nError))
45
+  ,Error(nError)
46
 {
47
 }
48
 
49
 CRTError::CRTError(const std::string & Description,int nError)
50
-   :std::runtime_error(Description+": "+strerror(nError))
51
-   ,Error(nError)
52
+  :std::runtime_error(Description+": "+strerror(nError))
53
+  ,Error(nError)
54
 {
55
 }
56
 
57
 
58
 StdIOCallback::StdIOCallback(const char*Path, const open_mode aMode)
59
 {
60
-   assert(Path!=0);
61
-
62
-   const char *Mode;
63
-   switch (aMode)
64
-   {
65
-   case MODE_READ:
66
-       Mode = "rb";
67
-       break;
68
-   case MODE_SAFE:
69
-       Mode = "rb+";
70
-       break;
71
-   case MODE_WRITE:
72
-       Mode = "wb";
73
-       break;
74
-   case MODE_CREATE:
75
-       Mode = "wb+";
76
-       break;
77
-   default:
78
-       throw 0;
79
-   }
80
-
81
-   File=fopen(Path,Mode);
82
-   if(File==0)
83
-   {
84
+  assert(Path!=0);
85
+
86
+  const char *Mode;
87
+  switch (aMode) {
88
+    case MODE_READ:
89
+      Mode = "rb";
90
+      break;
91
+    case MODE_SAFE:
92
+      Mode = "rb+";
93
+      break;
94
+    case MODE_WRITE:
95
+      Mode = "wb";
96
+      break;
97
+    case MODE_CREATE:
98
+      Mode = "wb+";
99
+      break;
100
+    default:
101
+      throw 0;
102
+  }
103
+
104
+  File=fopen(Path,Mode);
105
+  if(File==0) {
106
 #if !defined(__GNUC__) || (__GNUC__ > 2)
107
-       stringstream Msg;
108
-       Msg<<"Can't open stdio file \""<<Path<<"\" in mode \""<<Mode<<"\"";
109
-       throw CRTError(Msg.str());
110
+    stringstream Msg;
111
+    Msg<<"Can't open stdio file \""<<Path<<"\" in mode \""<<Mode<<"\"";
112
+    throw CRTError(Msg.str());
113
 #endif // GCC2
114
-   }
115
-   mCurrentPosition = 0;
116
+  }
117
+  mCurrentPosition = 0;
118
 }
119
 
120
 
121
 StdIOCallback::~StdIOCallback()throw()
122
 {
123
-   close();
124
+  close();
125
 }
126
 
127
 
128
 
129
 uint32 StdIOCallback::read(void*Buffer,size_t Size)
130
 {
131
-   assert(File!=0);
132
-   
133
-   size_t result = fread(Buffer, 1, Size, File);
134
-   mCurrentPosition += result;
135
-   return result;
136
+  assert(File!=0);
137
+
138
+  size_t result = fread(Buffer, 1, Size, File);
139
+  mCurrentPosition += result;
140
+  return result;
141
 }
142
 
143
 void StdIOCallback::setFilePointer(int64 Offset,seek_mode Mode)
144
 {
145
-   assert(File!=0);
146
+  assert(File!=0);
147
 
148
-   // There is a numeric cast in the boost library, which would be quite nice for this checking
149
-/* 
150
-   SL : replaced because unknown class in cygwin
151
-   assert(Offset <= numeric_limits<long>::max());
152
-   assert(Offset >= numeric_limits<long>::min());
153
-*/
154
+  // There is a numeric cast in the boost library, which would be quite nice for this checking
155
+  /*
156
+    SL : replaced because unknown class in cygwin
157
+    assert(Offset <= numeric_limits<long>::max());
158
+    assert(Offset >= numeric_limits<long>::min());
159
+  */
160
 
161
-   assert(Offset <= LONG_MAX);
162
-   assert(Offset >= LONG_MIN);
163
+  assert(Offset <= LONG_MAX);
164
+  assert(Offset >= LONG_MIN);
165
 
166
-   assert(Mode==SEEK_CUR||Mode==SEEK_END||Mode==SEEK_SET);
167
+  assert(Mode==SEEK_CUR||Mode==SEEK_END||Mode==SEEK_SET);
168
 
169
-   if(fseek(File,Offset,Mode)!=0)
170
-   {
171
+  if(fseek(File,Offset,Mode)!=0) {
172
 #if !defined(__GNUC__) || (__GNUC__ > 2)
173
-       ostringstream Msg;
174
-       Msg<<"Failed to seek file "<<File<<" to offset "<<(unsigned long)Offset<<" in mode "<<Mode;
175
-       throw CRTError(Msg.str());
176
+    ostringstream Msg;
177
+    Msg<<"Failed to seek file "<<File<<" to offset "<<(unsigned long)Offset<<" in mode "<<Mode;
178
+    throw CRTError(Msg.str());
179
 #endif // GCC2
180
-       mCurrentPosition = ftell(File);
181
-   }
182
-   else
183
-   {
184
-       switch ( Mode )
185
-       {
186
-           case SEEK_CUR:
187
-               mCurrentPosition += Offset;
188
-               break;
189
-           case SEEK_END:
190
-               mCurrentPosition = ftell(File);
191
-               break;
192
-           case SEEK_SET:
193
-               mCurrentPosition = Offset;
194
-               break;
195
-       }
196
-   }
197
+    mCurrentPosition = ftell(File);
198
+  } else {
199
+    switch ( Mode ) {
200
+      case SEEK_CUR:
201
makemkv-oss-1.9.5.tar.xz/libebml/src/platform/win32/WinIOCallback.cpp -> makemkv-oss-1.10.2.tar.xz/libebml/src/platform/win32/WinIOCallback.cpp Changed
201
 
1
@@ -9,17 +9,17 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
@@ -27,11 +27,11 @@
24
 **********************************************************************/
25
 
26
 /*!
27
-   \file
28
-   \version \$Id: WinIOCallback.cpp 1092 2005-03-16 13:01:15Z robux4 $
29
-   \author Steve Lhomme     <robux4 @ users.sf.net>
30
-   \author Jory Stone       <jcsston @ toughguy.net>
31
-   \author Cyrius           <suiryc @ users.sf.net>
32
+  \file
33
+  \version \$Id: WinIOCallback.cpp 1092 2005-03-16 13:01:15Z robux4 $
34
+  \author Steve Lhomme     <robux4 @ users.sf.net>
35
+  \author Jory Stone       <jcsston @ toughguy.net>
36
+  \author Cyrius           <suiryc @ users.sf.net>
37
 */
38
 
39
 #include <lgpl/cassert>
40
@@ -47,237 +47,230 @@
41
 START_LIBEBML_NAMESPACE
42
 
43
 WinIOCallback::WinIOCallback(const char* Path, const open_mode aMode, DWORD dwFlags)
44
-   :mFile(NULL), mOk(false)
45
+  :mFile(NULL), mOk(false)
46
 {
47
-   mOk = open(Path, aMode, dwFlags);   
48
+  mOk = open(Path, aMode, dwFlags);
49
 }
50
 
51
 WinIOCallback::WinIOCallback(const wchar_t* Path, const open_mode aMode, DWORD dwFlags)
52
-   :mFile(NULL), mOk(false)
53
+  :mFile(NULL), mOk(false)
54
 {
55
-   mOk = open(Path, aMode, dwFlags);
56
+  mOk = open(Path, aMode, dwFlags);
57
 }
58
 
59
 WinIOCallback::~WinIOCallback()
60
 {
61
-   close();
62
+  close();
63
 }
64
 
65
-bool WinIOCallback::open(const char* Path, const open_mode aMode, DWORD dwFlags) 
66
+bool WinIOCallback::open(const char* Path, const open_mode aMode, DWORD dwFlags)
67
 {
68
-   assert(Path!=0);
69
+  assert(Path!=0);
70
 
71
-   DWORD AccessMode, ShareMode, Disposition;
72
+  DWORD AccessMode, ShareMode, Disposition;
73
 
74
-   switch (aMode)
75
-   {
76
-   case MODE_READ:
77
-       AccessMode = GENERIC_READ;
78
-       ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE;
79
-       Disposition = OPEN_EXISTING;
80
-       break;
81
-   case MODE_WRITE:
82
-       AccessMode = GENERIC_WRITE;
83
-       ShareMode = 0;
84
-       Disposition = OPEN_ALWAYS;
85
-       break;
86
-   case MODE_SAFE:
87
-       AccessMode = GENERIC_WRITE|GENERIC_READ;
88
-       ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE;
89
-       Disposition = OPEN_ALWAYS;
90
-       break;
91
-   case MODE_CREATE:
92
-       AccessMode = GENERIC_WRITE;
93
-       ShareMode = 0;
94
-       Disposition = CREATE_ALWAYS;
95
-       break;
96
-   default:
97
-       assert(false);
98
-   }
99
+  switch (aMode) {
100
+    case MODE_READ:
101
+      AccessMode = GENERIC_READ;
102
+      ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE;
103
+      Disposition = OPEN_EXISTING;
104
+      break;
105
+    case MODE_WRITE:
106
+      AccessMode = GENERIC_WRITE;
107
+      ShareMode = 0;
108
+      Disposition = OPEN_ALWAYS;
109
+      break;
110
+    case MODE_SAFE:
111
+      AccessMode = GENERIC_WRITE|GENERIC_READ;
112
+      ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE;
113
+      Disposition = OPEN_ALWAYS;
114
+      break;
115
+    case MODE_CREATE:
116
+      AccessMode = GENERIC_WRITE;
117
+      ShareMode = 0;
118
+      Disposition = CREATE_ALWAYS;
119
+      break;
120
+    default:
121
+      assert(false);
122
+  }
123
 
124
-   mFile = CreateFileA(Path, AccessMode, ShareMode, NULL, Disposition, dwFlags, NULL);
125
-   if ((mFile == INVALID_HANDLE_VALUE) || ((long)mFile == 0xffffffff))
126
-   {
127
-       //File was not opened
128
-       char err_msg[256];
129
-       DWORD error_code = GetLastError();
130
-       // An error message about the file already existing is not really an error message :P
131
-       if (error_code != ERROR_ALREADY_EXISTS) {
132
-           FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM, 0, error_code, 0, err_msg, 255, NULL);
133
-           EBML_TRACE("Failed to open file \"%hs\" in mode %d.", Path, aMode);                     
134
+  mFile = CreateFileA(Path, AccessMode, ShareMode, NULL, Disposition, dwFlags, NULL);
135
+  if ((mFile == INVALID_HANDLE_VALUE) || ((long)mFile == 0xffffffff)) {
136
+    //File was not opened
137
+    char err_msg[256];
138
+    DWORD error_code = GetLastError();
139
+    // An error message about the file already existing is not really an error message :P
140
+    if (error_code != ERROR_ALREADY_EXISTS) {
141
+      FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM, 0, error_code, 0, err_msg, 255, NULL);
142
+      EBML_TRACE("Failed to open file \"%hs\" in mode %d.", Path, aMode);
143
 
144
-           mLastErrorStr = err_msg;
145
-           return mOk = false;
146
-       }
147
-   }
148
-   mCurrentPosition = 0;
149
+      mLastErrorStr = err_msg;
150
+      return mOk = false;
151
+    }
152
+  }
153
+  mCurrentPosition = 0;
154
 
155
-   EBML_TRACE("Successfully opened file \"%hs\" in mode %d. The handle is %p\n", Path, aMode, mFile);
156
+  EBML_TRACE("Successfully opened file \"%hs\" in mode %d. The handle is %p\n", Path, aMode, mFile);
157
 
158
-   return mOk = true;
159
+  return mOk = true;
160
 };
161
 
162
-bool WinIOCallback::open(const wchar_t* Path, const open_mode aMode, DWORD dwFlags) 
163
+bool WinIOCallback::open(const wchar_t* Path, const open_mode aMode, DWORD dwFlags)
164
 {
165
-   assert(Path!=0);
166
+  assert(Path!=0);
167
 
168
-   DWORD AccessMode, ShareMode, Disposition;
169
+  DWORD AccessMode, ShareMode, Disposition;
170
 
171
-   switch (aMode)
172
-   {
173
-   case MODE_READ:
174
-       AccessMode = GENERIC_READ;
175
-       ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE;
176
-       Disposition = OPEN_EXISTING;
177
-       break;
178
-   case MODE_WRITE:
179
-       AccessMode = GENERIC_WRITE;
180
-       ShareMode = 0;
181
-       Disposition = OPEN_ALWAYS;
182
-       break;
183
-   case MODE_SAFE:
184
-       AccessMode = GENERIC_WRITE|GENERIC_READ;
185
-       ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE;
186
-       Disposition = OPEN_ALWAYS;
187
-       break;
188
-   case MODE_CREATE:
189
-       AccessMode = GENERIC_WRITE;
190
-       ShareMode = 0;
191
-       Disposition = CREATE_ALWAYS;
192
-       break;
193
-   default:
194
-       assert(false);
195
-   }
196
+  switch (aMode) {
197
+    case MODE_READ:
198
+      AccessMode = GENERIC_READ;
199
+      ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE;
200
+      Disposition = OPEN_EXISTING;
201
makemkv-oss-1.9.5.tar.xz/libebml/src/platform/win32/WinIOCallback.h -> makemkv-oss-1.10.2.tar.xz/libebml/src/platform/win32/WinIOCallback.h Changed
89
 
1
@@ -9,28 +9,28 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
-** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
+** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17
 **
18
-** See http://www.matroska.org/license/lgpl/ for LGPL licensing information.
19
+** See http://www.gnu.org/licenses/lgpl-2.1.html for LGPL licensing information.
20
 **
21
 ** Contact license@matroska.org if any conditions of this licensing are
22
 ** not clear to you.
23
 **
24
 **********************************************************************/
25
 /*!
26
-   \file
27
-   \version \$Id: WinIOCallback.h 1090 2005-03-16 12:47:59Z robux4 $
28
-   \author Steve Lhomme     <robux4 @ users.sf.net>
29
-   \author Jory Stone       <jcsston @ toughguy.net>
30
-   \author Cyrius           <suiryc @ users.sf.net>
31
+  \file
32
+  \version \$Id: WinIOCallback.h 1090 2005-03-16 12:47:59Z robux4 $
33
+  \author Steve Lhomme     <robux4 @ users.sf.net>
34
+  \author Jory Stone       <jcsston @ toughguy.net>
35
+  \author Cyrius           <suiryc @ users.sf.net>
36
 */
37
 
38
 #ifndef LIBEBML_WINIOCALLBACK_H
39
@@ -44,30 +44,30 @@
40
 START_LIBEBML_NAMESPACE
41
 
42
 class WinIOCallback: public IOCallback
43
-{  
44
+{
45
 public:
46
-   WinIOCallback(const wchar_t* Path, const open_mode aMode, DWORD dwFlags=0);
47
-   WinIOCallback(const char* Path, const open_mode aMode, DWORD dwFlags=0);
48
-   virtual ~WinIOCallback();
49
+  WinIOCallback(const wchar_t* Path, const open_mode aMode, DWORD dwFlags=0);
50
+  WinIOCallback(const char* Path, const open_mode aMode, DWORD dwFlags=0);
51
+  virtual ~WinIOCallback();
52
+
53
+  bool open(const wchar_t* Path, const open_mode Mode, DWORD dwFlags=0);
54
+  bool open(const char* Path, const open_mode Mode, DWORD dwFlags=0);
55
 
56
-   bool open(const wchar_t* Path, const open_mode Mode, DWORD dwFlags=0);
57
-   bool open(const char* Path, const open_mode Mode, DWORD dwFlags=0);
58
+  virtual uint32 read(void*Buffer,size_t Size);
59
+  virtual size_t write(const void*Buffer,size_t Size);
60
+  virtual void setFilePointer(int64 Offset,seek_mode Mode=seek_beginning);
61
+  virtual uint64 getFilePointer();
62
+  virtual void close();
63
 
64
-   virtual uint32 read(void*Buffer,size_t Size);
65
-   virtual size_t write(const void*Buffer,size_t Size);
66
-   virtual void setFilePointer(int64 Offset,seek_mode Mode=seek_beginning);
67
-   virtual uint64 getFilePointer();
68
-   virtual void close();
69
-   
70
-   bool IsOk() { return mOk; };    
71
-   const std::string &GetLastErrorStr() { return mLastErrorStr; };
72
-   bool SetEOF();
73
+  bool IsOk() { return mOk; };
74
+  const std::string &GetLastErrorStr() { return mLastErrorStr; };
75
+  bool SetEOF();
76
 protected:
77
-   bool mOk;
78
-   std::string mLastErrorStr;
79
-   uint64 mCurrentPosition;
80
+  bool mOk;
81
+  std::string mLastErrorStr;
82
+  uint64 mCurrentPosition;
83
 
84
-   HANDLE mFile;
85
+  HANDLE mFile;
86
 };
87
 
88
 END_LIBEBML_NAMESPACE
89
makemkv-oss-1.9.5.tar.xz/libffabi/inc/lgpl/ffabi.h -> makemkv-oss-1.10.2.tar.xz/libffabi/inc/lgpl/ffabi.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/bitstream.cpp -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/bitstream.cpp Changed
62
 
1
@@ -155,14 +155,16 @@
2
     return 0;
3
 }
4
 
5
-void bits_align1(struct bitstream *bits)
6
+size_t bits_align1(struct bitstream *bits)
7
 {
8
-    bits->index = (bits->index + 7) & ~7;
9
+    bits->index = DCA_ALIGN(bits->index, 8);
10
+    return bits->index;
11
 }
12
 
13
-void bits_align4(struct bitstream *bits)
14
+size_t bits_align4(struct bitstream *bits)
15
 {
16
-    bits->index = (bits->index + 31) & ~31;
17
+    bits->index = DCA_ALIGN(bits->index, 32);
18
+    return bits->index;
19
 }
20
 
21
 static uint16_t crc16(const uint8_t *data, size_t size)
22
@@ -188,3 +190,39 @@
23
         return -DCADEC_EBADCRC;
24
     return 0;
25
 }
26
+
27
+void bits_get_array(struct bitstream *bits, int *array, int size, int n)
28
+{
29
+    for (int i = 0; i < size; i++)
30
+        array[i] = bits_get(bits, n);
31
+}
32
+
33
+void bits_get_signed_array(struct bitstream *bits, int *array, int size, int n)
34
+{
35
+    for (int i = 0; i < size; i++)
36
+        array[i] = bits_get_signed(bits, n);
37
+}
38
+
39
+void bits_get_signed_linear_array(struct bitstream *bits, int *array, int size, int n)
40
+{
41
+    if (n == 0) {
42
+        memset(array, 0, sizeof(*array) * size);
43
+    } else for (int i = 0; i < size; i++) {
44
+        int v = bits_get(bits, n);
45
+        array[i] = (v >> 1) ^ -(v & 1);
46
+    }
47
+}
48
+
49
+void bits_get_signed_rice_array(struct bitstream *bits, int *array, int size, int k)
50
+{
51
+    for (int i = 0; i < size; i++)
52
+        array[i] = bits_get_signed_rice(bits, k);
53
+}
54
+
55
+int bits_get_signed_vlc_array(struct bitstream *bits, int *array, int size, const struct huffman *h)
56
+{
57
+    for (int i = 0; i < size; i++)
58
+        if ((array[i] = bits_get_signed_vlc(bits, h)) == BITS_INVALID_VLC_SI)
59
+            return -DCADEC_EBADDATA;
60
+    return 0;
61
+}
62
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/bitstream.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/bitstream.h Changed
60
 
1
@@ -45,51 +45,13 @@
2
 void bits_skip1(struct bitstream *bits);
3
 int bits_seek(struct bitstream *bits, size_t n);
4
 void bits_seek1(struct bitstream *bits);
5
-void bits_align1(struct bitstream *bits);
6
-void bits_align4(struct bitstream *bits);
7
+size_t bits_align1(struct bitstream *bits);
8
+size_t bits_align4(struct bitstream *bits);
9
 int bits_check_crc(struct bitstream *bits, size_t p1, size_t p2);
10
-
11
-static inline void bits_get_array(struct bitstream *bits,
12
-                                  int *array, int size, int n)
13
-{
14
-    for (int i = 0; i < size; i++)
15
-        array[i] = bits_get(bits, n);
16
-}
17
-
18
-static inline void bits_get_signed_array(struct bitstream *bits,
19
-                                         int *array, int size, int n)
20
-{
21
-    for (int i = 0; i < size; i++)
22
-        array[i] = bits_get_signed(bits, n);
23
-}
24
-
25
-static inline void bits_get_signed_linear_array(struct bitstream *bits,
26
-                                                int *array, int size, int n)
27
-{
28
-    if (n == 0) {
29
-        memset(array, 0, sizeof(*array) * size);
30
-    } else for (int i = 0; i < size; i++) {
31
-        int v = bits_get(bits, n);
32
-        array[i] = (v >> 1) ^ -(v & 1);
33
-    }
34
-}
35
-
36
-static inline void bits_get_signed_rice_array(struct bitstream *bits,
37
-                                              int *array, int size, int k)
38
-{
39
-    for (int i = 0; i < size; i++)
40
-        array[i] = bits_get_signed_rice(bits, k);
41
-}
42
-
43
-static inline int bits_get_signed_vlc_array(struct bitstream *bits,
44
-                                            int *array, int size,
45
-                                            const struct huffman *h)
46
-{
47
-    for (int i = 0; i < size; i++) {
48
-        if ((array[i] = bits_get_signed_vlc(bits, h)) == BITS_INVALID_VLC_SI)
49
-            return -DCADEC_EBADDATA;
50
-    }
51
-    return 0;
52
-}
53
+void bits_get_array(struct bitstream *bits, int *array, int size, int n);
54
+void bits_get_signed_array(struct bitstream *bits, int *array, int size, int n);
55
+void bits_get_signed_linear_array(struct bitstream *bits, int *array, int size, int n);
56
+void bits_get_signed_rice_array(struct bitstream *bits, int *array, int size, int k);
57
+int bits_get_signed_vlc_array(struct bitstream *bits, int *array, int size, const struct huffman *h);
58
 
59
 #endif
60
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/common.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/common.h Changed
201
 
1
@@ -26,53 +26,177 @@
2
 #include <math.h>
3
 #include <errno.h>
4
 
5
+#include "compiler.h"
6
 #include "dca_context.h"
7
 #include "ta.h"
8
-#include "compiler.h"
9
 
10
-struct dcadec_log_context;
11
-void dca_log(struct dcadec_log_context *context,const char* msg,unsigned int line);
12
+#if AT_LEAST_GCC(3, 4)
13
+#define dca_clz32(x)    __builtin_clz(x)
14
+#define dca_clz64(x)    __builtin_clzll(x)
15
+#elif COMPILER_MSVC
16
+#define dca_clz32(x)    (31-msvc_bsr32((x)))
17
+#define dca_clz64(x)    (63-msvc_bsr64((x)))
18
+#else
19
+static inline int dca_clz32(uint32_t x)
20
+{
21
+    int r = 0;
22
 
23
-#ifdef NDEBUG
24
+    assert(x);
25
+    if (x & 0xffff0000) { x >>= 16; r |= 16; }
26
+    if (x & 0x0000ff00) { x >>=  8; r |=  8; }
27
+    if (x & 0x000000f0) { x >>=  4; r |=  4; }
28
+    if (x & 0x0000000c) { x >>=  2; r |=  2; }
29
+    if (x & 0x00000002) { x >>=  1; r |=  1; }
30
 
31
-#define DCA_DEBUG(m)
32
+    return 31 - r;
33
+}
34
 
35
-#elif defined(DCA_LOG)
36
+static inline int dca_clz64(uint64_t x)
37
+{
38
+    int r = 0;
39
 
40
-#define DCA_DEBUG(m) \
41
-    dca_log(DCA_LOGCTX,m,__LINE__)
42
+    assert(x);
43
+    if (x & 0xffffffff00000000) { x >>= 32; r |= 32; }
44
+    if (x & 0x00000000ffff0000) { x >>= 16; r |= 16; }
45
+    if (x & 0x000000000000ff00) { x >>=  8; r |=  8; }
46
+    if (x & 0x00000000000000f0) { x >>=  4; r |=  4; }
47
+    if (x & 0x000000000000000c) { x >>=  2; r |=  2; }
48
+    if (x & 0x0000000000000002) { x >>=  1; r |=  1; }
49
 
50
+    return 63 - r;
51
+}
52
+#endif
53
+
54
+#if (defined __GNUC__) && (defined __POPCNT__)
55
+#define dca_popcount(x) __builtin_popcount(x)
56
 #else
57
+static inline int dca_popcount(uint32_t x)
58
+{
59
+    x -= (x >> 1) & 0x55555555;
60
+    x = (x & 0x33333333) + ((x >> 2) & 0x33333333);
61
+    x = (x + (x >> 4)) & 0x0f0f0f0f;
62
+    x += x >> 8;
63
+    return (x + (x >> 16)) & 0x3f;
64
+}
65
+#endif
66
 
67
-#define DCA_DEBUG(m) \
68
-    fprintf(stderr, "%s+%d: %s\n", __FILE__, __LINE__, m)
69
+#define dca_countof(x)  (sizeof(x) / sizeof((x)[0]))
70
 
71
+#if AT_LEAST_GCC(4, 8)
72
+#define dca_bswap16(x)  __builtin_bswap16(x)
73
+#elif COMPILER_MSVC
74
+#define dca_bswap16(x)  _byteswap_ushort((x))
75
+#else
76
+static inline uint16_t dca_bswap16(uint16_t x)
77
+{
78
+    return (x << 8) | (x >> 8);
79
+}
80
 #endif
81
 
82
-#define enforce(x, m) \
83
-    do {                                \
84
-        if (!(x)) {                     \
85
-            DCA_DEBUG(m);               \
86
-            return -DCADEC_EBADDATA;    \
87
-        }                               \
88
-    } while (false)
89
+#if AT_LEAST_GCC(4, 3)
90
+#define dca_bswap32(x)  __builtin_bswap32(x)
91
+#define dca_bswap64(x)  __builtin_bswap64(x)
92
+#elif COMPILER_MSVC
93
+#define dca_bswap32(x)  _byteswap_ulong((x))
94
+#define dca_bswap64(x)  _byteswap_uint64((x))
95
+#else
96
+static inline uint32_t dca_bswap32(uint32_t x)
97
+{
98
+    x = ((x & 0x00ff00ff) << 8) | ((x & 0xff00ff00) >> 8);
99
+    return (x << 16) | (x >> 16);
100
+}
101
 
102
-#define require(x, m) \
103
-    do {                            \
104
-        if (!(x)) {                 \
105
-            DCA_DEBUG(m);           \
106
-            return -DCADEC_ENOSUP;  \
107
-        }                           \
108
-    } while (false)
109
+static inline uint64_t dca_bswap64(uint64_t x)
110
+{
111
+    x = ((x & 0x00ff00ff00ff00ff) <<  8) | ((x & 0xff00ff00ff00ff00) >>  8);
112
+    x = ((x & 0x0000ffff0000ffff) << 16) | ((x & 0xffff0000ffff0000) >> 16);
113
+    return (x << 32) | (x >> 32);
114
+}
115
+#endif
116
 
117
-#define dca_assert(x) \
118
-    do {                                  \
119
-        if (!(x)) {                       \
120
-            DCA_DEBUG("dca_assert: " #x); \
121
-            return -DCADEC_EINVAL;        \
122
-        }                                 \
123
+#define DCA_BSWAP16_C(x)    ((((x) & 0x00ff)   <<  8) | (((x) & 0xff00)  >>  8))
124
+#define DCA_BSWAP32_C(x)    ((DCA_BSWAP16_C(x) << 16) | (DCA_BSWAP16_C(x >> 16)))
125
+#define DCA_BSWAP64_C(x)    ((DCA_BSWAP32_C(x) << 32) | (DCA_BSWAP32_C(x >> 32)))
126
+
127
+#if HAVE_BIGENDIAN
128
+#define DCA_16LE(x) dca_bswap16(x)
129
+#define DCA_32LE(x) dca_bswap32(x)
130
+#define DCA_64LE(x) dca_bswap64(x)
131
+#define DCA_16BE(x) ((uint16_t)(x))
132
+#define DCA_32BE(x) ((uint32_t)(x))
133
+#define DCA_64BE(x) ((uint64_t)(x))
134
+#define DCA_16LE_C(x)   DCA_BSWAP16_C(x)
135
+#define DCA_32LE_C(x)   DCA_BSWAP32_C(x)
136
+#define DCA_64LE_C(x)   DCA_BSWAP64_C(x)
137
+#define DCA_16BE_C(x)   (x)
138
+#define DCA_32BE_C(x)   (x)
139
+#define DCA_64BE_C(x)   (x)
140
+#else
141
+#define DCA_16LE(x) ((uint16_t)(x))
142
+#define DCA_32LE(x) ((uint32_t)(x))
143
+#define DCA_64LE(x) ((uint64_t)(x))
144
+#define DCA_16BE(x) dca_bswap16(x)
145
+#define DCA_32BE(x) dca_bswap32(x)
146
+#define DCA_64BE(x) dca_bswap64(x)
147
+#define DCA_16LE_C(x)   (x)
148
+#define DCA_32LE_C(x)   (x)
149
+#define DCA_64LE_C(x)   (x)
150
+#define DCA_16BE_C(x)   DCA_BSWAP16_C(x)
151
+#define DCA_32BE_C(x)   DCA_BSWAP32_C(x)
152
+#define DCA_64BE_C(x)   DCA_BSWAP64_C(x)
153
+#endif
154
+
155
+#define DCA_MIN(a, b)   ((a) < (b) ? (a) : (b))
156
+#define DCA_MAX(a, b)   ((a) > (b) ? (a) : (b))
157
+
158
+#define DCA_ALIGN(value, align) \
159
+    (((value) + (align) - 1) & ~((align) - 1))
160
+
161
+#define DCA_MEM16BE(data) \
162
+    (((uint32_t)(data)[0] <<  8) | (data)[1])
163
+
164
+#define DCA_MEM24BE(data) \
165
+    (((uint32_t)(data)[0] << 16) | DCA_MEM16BE(&(data)[1]))
166
+
167
+#define DCA_MEM32BE(data) \
168
+    (((uint32_t)(data)[0] << 24) | DCA_MEM24BE(&(data)[1]))
169
+
170
+#define DCA_MEM40BE(data) \
171
+    (((uint64_t)(data)[0] << 32) | DCA_MEM32BE(&(data)[1]))
172
+
173
+static inline uint32_t DCA_MEM32NE(const void *data)
174
+{
175
+    uint32_t res;
176
+    memcpy(&res, data, sizeof(res));
177
+    return res;
178
+}
179
+
180
+struct dcadec_log_context;
181
+void dca_log(struct dcadec_log_context *context,const char* msg,unsigned int line);
182
+
183
+#ifdef _DEBUG
184
+#define DCA_DEBUG(m) \
185
+    fprintf(stderr, "%s+%d: %s\n", __FILE__, __LINE__, m)
186
+#elif defined(DCA_LOG)
187
+#define DCA_DEBUG(m) \
188
+    dca_log(DCA_LOGCTX,m,__LINE__)
189
+#else
190
+#define DCA_DEBUG(m)
191
+#endif
192
+
193
+#define enforce3(x, m, e) \
194
+    do {                        \
195
+        if (!(x)) {             \
196
+            DCA_DEBUG(m);       \
197
+            return -(e);        \
198
+        }                       \
199
     } while (false)
200
 
201
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/compiler.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/compiler.h Changed
145
 
1
@@ -19,35 +19,23 @@
2
 #ifndef COMPILER_H
3
 #define COMPILER_H
4
 
5
-#ifdef __GNUC__
6
+#if defined(_MSC_VER) && defined(WIN32)
7
+#define inline      __inline
8
+#define restrict    __restrict
9
 
10
-#define dca_bswap16(x)  __builtin_bswap16(x)
11
-#define dca_bswap32(x)  __builtin_bswap32(x)
12
-#define dca_bswap64(x)  __builtin_bswap64(x)
13
-#define dca_clz32(x)    __builtin_clz(x)
14
-#define dca_clz64(x)    __builtin_clzll(x)
15
-#define dca_popcount(x) __builtin_popcount(x)
16
+#define fseeko  _fseeki64
17
+#define ftello  _ftelli64
18
+#define STDIN_FILENO    0
19
+#define STDOUT_FILENO   1
20
 
21
-#elif (defined(_MSC_VER) && defined(WIN32))
22
-
23
-#define __ORDER_LITTLE_ENDIAN__ 0x1234
24
-#define __ORDER_BIG_ENDIAN__    0x4321
25
-#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__
26
+typedef __int64 off_t;
27
 
28
 #include <stdint.h>
29
 #include <stdlib.h>
30
 #pragma intrinsic(_byteswap_ulong, _byteswap_uint64, _byteswap_ushort)
31
 
32
 extern "C" unsigned char _BitScanReverse (unsigned int *Index,unsigned int Mask);
33
-extern "C" unsigned int __popcnt(unsigned int value);
34
-#pragma intrinsic(_BitScanReverse,__popcnt)
35
-
36
-#define dca_bswap16(x)  _byteswap_ushort((x))
37
-#define dca_bswap32(x)  _byteswap_ulong((x))
38
-#define dca_bswap64(x)  _byteswap_uint64((x))
39
-#define dca_clz32(x)    (31-msvc_bsr32((x)))
40
-#define dca_clz64(x)    (63-msvc_bsr64((x)))
41
-#define dca_popcount(x) __popcnt((x))
42
+#pragma intrinsic(_BitScanReverse)
43
 
44
 static unsigned int inline __forceinline msvc_bsr32(uint32_t value)
45
 {
46
@@ -57,15 +45,30 @@
47
 }
48
 
49
 #ifdef _WIN64
50
+
51
+typedef struct __declspec(intrin_type) __declspec(align(16)) __m128d {
52
+    double              m128d_f64[2];
53
+} __m128d;
54
+
55
 extern "C" unsigned char _BitScanReverse64 (unsigned int *Index,uint64_t Mask);
56
-#pragma intrinsic(_BitScanReverse64)
57
+extern "C" __int64 _mm_cvtsd_si64x(__m128d a);
58
+extern "C" __m128d _mm_loadu_pd(double const*);
59
+#pragma intrinsic(_BitScanReverse64,_mm_cvtsd_si64x,_mm_loadu_pd)
60
+
61
 static unsigned int inline __forceinline msvc_bsr64(uint64_t value)
62
 {
63
     unsigned int r;
64
     _BitScanReverse64(&r,value);
65
     return r;
66
 }
67
+
68
+static long int inline __forceinline msvc_lrint(double x)
69
+{
70
+    return (long int)_mm_cvtsd_si64x(_mm_loadu_pd(&x));
71
+}
72
+
73
 #else
74
+
75
 static uint32_t inline __forceinline msvc_bsr64(uint64_t value)
76
 {
77
     uint32_t top = (uint32_t)(value>>32);
78
@@ -76,29 +79,47 @@
79
         return 32+msvc_bsr32(top);
80
     }
81
 }
82
-#endif
83
 
84
-#else
85
-#error Unsupported compiler
86
+static long int __declspec(noinline) msvc_lrint(double x)
87
+{
88
+    long int ival;
89
+
90
+    __asm { fld x };
91
+    __asm { fistp ival };
92
+
93
+    return ival;
94
+}
95
+
96
+#endif // _WIN64
97
+
98
+#define lrint(x) msvc_lrint(x)
99
+
100
 #endif
101
 
102
-#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
103
-#define DCA_16LE(x) ((uint16_t)(x))
104
-#define DCA_32LE(x) ((uint32_t)(x))
105
-#define DCA_64LE(x) ((uint64_t)(x))
106
-#define DCA_16BE(x) dca_bswap16(x)
107
-#define DCA_32BE(x) dca_bswap32(x)
108
-#define DCA_64BE(x) dca_bswap64(x)
109
-#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
110
-#define DCA_16LE(x) dca_bswap16(x)
111
-#define DCA_32LE(x) dca_bswap32(x)
112
-#define DCA_64LE(x) dca_bswap64(x)
113
-#define DCA_16BE(x) ((uint16_t)(x))
114
-#define DCA_32BE(x) ((uint32_t)(x))
115
-#define DCA_64BE(x) ((uint64_t)(x))
116
-#else
117
-#error Unsupported byte order
118
+#define COMPILER_MSVC  \
119
+    (defined _MSC_VER) && (defined WIN32)
120
+
121
+#define AT_LEAST_GCC(major, minor)  \
122
+    (defined __GNUC__) && ((__GNUC__ > (major)) || (__GNUC__ == (major) && __GNUC_MINOR__ >= (minor)))
123
+
124
+#ifndef HAVE_BIGENDIAN
125
+# if (defined __GNUC__)
126
+#  if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
127
+#   define HAVE_BIGENDIAN   0
128
+#  elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
129
+#   define HAVE_BIGENDIAN   1
130
+#  else
131
+#   error Unsupported byte order
132
+#  endif
133
+# elif (defined _MSC_VER)
134
+#  define HAVE_BIGENDIAN    0
135
+# else
136
+#  error Unsupported compiler. Define HAVE_BIGENDIAN macro to specify endianness.
137
+# endif
138
 #endif
139
 
140
+#if !defined(restrict) && defined(__cplusplus)
141
+#define restrict __restrict
142
+#endif
143
 
144
 #endif
145
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/core_decoder.cpp -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/core_decoder.cpp Changed
201
 
1
@@ -19,6 +19,7 @@
2
 #include "common.h"
3
 #include "bitstream.h"
4
 #include "interpolator.h"
5
+#include "idct.h"
6
 #include "fixed_math.h"
7
 #include "core_decoder.h"
8
 #include "exss_parser.h"
9
@@ -28,31 +29,41 @@
10
 #include "core_huffman.h"
11
 #include "core_vectors.h"
12
 
13
-enum sample_type {
14
+enum SampleType {
15
     NO_BITS_ALLOCATED,
16
     HUFFMAN_CODE,
17
     BLOCK_CODE,
18
     NO_FURTHER_ENCODING
19
 };
20
 
21
-enum header_type {
22
+enum HeaderType {
23
     HEADER_CORE,
24
     HEADER_XCH,
25
     HEADER_XXCH
26
 };
27
 
28
-// Mode 0: A (mono)
29
-// Mode 1: A + B (dual mono)
30
-// Mode 2: L + R (stereo)
31
-// Mode 3: (L+R) + (L-R) (sum-diff)
32
-// Mode 4: LT + RT (left and right total)
33
-// Mode 5: C + L + R
34
-// Mode 6: L + R + S
35
-// Mode 7: C + L + R + S
36
-// Mode 8: L + R + SL + SR
37
-// Mode 9: C + L + R + SL + SR
38
-
39
-static const int8_t prm_ch_to_spkr_map[10][5] = {
40
+enum AudioMode {
41
+    AMODE_MONO,             // Mode 0: A (mono)
42
+    AMODE_MONO_DUAL,        // Mode 1: A + B (dual mono)
43
+    AMODE_STEREO,           // Mode 2: L + R (stereo)
44
+    AMODE_STEREO_SUMDIFF,   // Mode 3: (L+R) + (L-R) (sum-diff)
45
+    AMODE_STEREO_TOTAL,     // Mode 4: LT + RT (left and right total)
46
+    AMODE_3F,               // Mode 5: C + L + R
47
+    AMODE_2F1R,             // Mode 6: L + R + S
48
+    AMODE_3F1R,             // Mode 7: C + L + R + S
49
+    AMODE_2F2R,             // Mode 8: L + R + SL + SR
50
+    AMODE_3F2R,             // Mode 9: C + L + R + SL + SR
51
+
52
+    AMODE_COUNT
53
+};
54
+
55
+enum ExtAudioType {
56
+    EXT_AUDIO_XCH   = 0,
57
+    EXT_AUDIO_X96   = 2,
58
+    EXT_AUDIO_XXCH  = 6
59
+};
60
+
61
+static const int8_t prm_ch_to_spkr_map[AMODE_COUNT][5] = {
62
     { SPEAKER_C,        -1,         -1,         -1,         -1 },
63
     { SPEAKER_L, SPEAKER_R,         -1,         -1,         -1 },
64
     { SPEAKER_L, SPEAKER_R,         -1,         -1,         -1 },
65
@@ -65,7 +76,7 @@
66
     { SPEAKER_C, SPEAKER_L, SPEAKER_R,  SPEAKER_Ls, SPEAKER_Rs }
67
 };
68
 
69
-static const uint8_t audio_mode_ch_mask[10] = {
70
+static const uint8_t audio_mode_ch_mask[AMODE_COUNT] = {
71
     SPEAKER_MASK_C,
72
     SPEAKER_MASK_L | SPEAKER_MASK_R,
73
     SPEAKER_MASK_L | SPEAKER_MASK_R,
74
@@ -104,7 +115,7 @@
75
 
76
     // Audio channel arrangement
77
     core->audio_mode = bits_get(&core->bits, 6);
78
-    require(core->audio_mode < 10, "Unsupported audio channel arrangement");
79
+    require(core->audio_mode < AMODE_COUNT, "Unsupported audio channel arrangement");
80
 
81
     // Core audio sampling frequency
82
     core->sample_rate = sample_rates[bits_get(&core->bits, 4)];
83
@@ -130,9 +141,6 @@
84
     bits_skip1(&core->bits);
85
 
86
     // Extension audio descriptor flag
87
-    // 0 - Channel extension (XCH)
88
-    // 2 - Frequency extension (X96)
89
-    // 6 - Channel extension (XXCH)
90
     core->ext_audio_type = bits_get(&core->bits, 3);
91
 
92
     // Extended coding flag
93
@@ -168,10 +176,10 @@
94
     core->es_format = !!(pcmr_index & 1);
95
 
96
     // Front sum/difference flag
97
-    require(bits_get1(&core->bits) == false, "Front sum/difference not supported");
98
+    core->sumdiff_front = bits_get1(&core->bits);
99
 
100
     // Surround sum/difference flag
101
-    require(bits_get1(&core->bits) == false, "Surround sum/difference not supported");
102
+    core->sumdiff_surround = bits_get1(&core->bits);
103
 
104
     // Dialog normalization / unspecified
105
     bits_skip(&core->bits, 4);
106
@@ -180,7 +188,7 @@
107
 }
108
 
109
 // 5.3.2 - Primary audio coding header
110
-static int parse_coding_header(struct core_decoder *core, enum header_type header, int xch_base)
111
+static int parse_coding_header(struct core_decoder *core, enum HeaderType header, int xch_base)
112
 {
113
     int ch, n, ret;
114
 
115
@@ -200,6 +208,10 @@
116
 
117
         core->ch_mask = audio_mode_ch_mask[core->audio_mode];
118
 
119
+        // Add LFE channel if present
120
+        if (core->lfe_present)
121
+            core->ch_mask |= SPEAKER_MASK_LFE1;
122
+
123
         core->dmix_coeffs_present = core->dmix_embedded = false;
124
         break;
125
 
126
@@ -224,8 +236,18 @@
127
         core->nchannels = audio_mode_nch[core->audio_mode] + n;
128
         dca_assert(core->nchannels <= MAX_CHANNELS);
129
 
130
-        // Loudspeaker activity mask
131
-        core->ch_mask |= bits_get(&core->bits, core->xxch_mask_nbits - 6) << 6;
132
+        // Loudspeaker layout mask
133
+        unsigned int mask = bits_get(&core->bits, core->xxch_mask_nbits - SPEAKER_Cs);
134
+        core->xxch_spkr_mask = mask << SPEAKER_Cs;
135
+
136
+        enforce(dca_popcount(core->xxch_spkr_mask) == n,
137
+                "Invalid XXCH speaker layout mask");
138
+
139
+        enforce(!(core->xxch_core_mask & core->xxch_spkr_mask),
140
+                "XXCH speaker layout mask overlaps with core");
141
+
142
+        // Combine core and XXCH masks together
143
+        core->ch_mask = core->xxch_core_mask | core->xxch_spkr_mask;
144
 
145
         // Downmix coefficients present in stream
146
         core->dmix_coeffs_present = bits_get1(&core->bits);
147
@@ -235,7 +257,15 @@
148
             core->dmix_embedded = bits_get1(&core->bits);
149
 
150
             // Downmix scale factor
151
-            core->dmix_scale = bits_get(&core->bits, 6);
152
+            int code = bits_get(&core->bits, 6);
153
+            if (code) {
154
+                unsigned int index = code * 4 - 44;
155
+                enforce(index < dca_countof(dmix_table_inv),
156
+                        "Invalid downmix scale index");
157
+                core->dmix_scale_inv = dmix_table_inv[index];
158
+            } else {
159
+                core->dmix_scale_inv = 0;
160
+            }
161
 
162
             // Downmix channel mapping mask
163
             for (ch = xch_base; ch < core->nchannels; ch++)
164
@@ -243,39 +273,46 @@
165
 
166
             // Downmix coefficients
167
             int *coeff_ptr = core->dmix_coeff;
168
-            for (ch = xch_base; ch < core->nchannels; ch++)
169
-                for (n = 0; n < core->xxch_mask_nbits; n++)
170
-                    if (core->dmix_mask[ch] & (1 << n))
171
-                        *coeff_ptr++ = bits_get(&core->bits, 7);
172
+            for (ch = xch_base; ch < core->nchannels; ch++) {
173
+                for (n = 0; n < core->xxch_mask_nbits; n++) {
174
+                    if (core->dmix_mask[ch] & (1U << n)) {
175
+                        int code = bits_get(&core->bits, 7);
176
+                        int sign = (code >> 6) - 1; code &= 63;
177
+                        if (code) {
178
+                            unsigned int index = code * 4 - 4;
179
+                            enforce(index < dca_countof(dmix_table),
180
+                                    "Invalid downmix coefficient index");
181
+                            *coeff_ptr++ = (dmix_table[index] ^ sign) - sign;
182
+                        } else {
183
+                            *coeff_ptr++ = 0;
184
+                        }
185
+                    }
186
+                }
187
+            }
188
         } else {
189
             core->dmix_embedded = false;
190
         }
191
 
192
-        /*
193
-        printf("nchannels %d\n", core->nchannels);
194
-        printf("ch_mask %#x\n", core->ch_mask);
195
-        printf("dmix_coeffs_present %d\n", core->dmix_coeffs_present);
196
-        if (core->dmix_coeffs_present) {
197
-            printf("dmix_embedded %d\n", core->dmix_embedded);
198
-            printf("dmix_scale %d\n", core->dmix_scale);
199
-            for (ch = xch_base; ch < core->nchannels; ch++)
200
-                printf("dmix_mask[%d] %#x\n", ch, core->dmix_mask[ch]);
201
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/core_decoder.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/core_decoder.h Changed
76
 
1
@@ -70,7 +70,7 @@
2
     int     deficit_samples;
3
     bool    crc_present;
4
     int     npcmblocks;
5
-    int     frame_size;
6
+    size_t  frame_size;
7
     int     audio_mode;
8
     int     sample_rate;
9
     int     bit_rate;
10
@@ -85,6 +85,8 @@
11
     bool    filter_perfect;
12
     int     source_pcm_res;
13
     bool    es_format;
14
+    bool    sumdiff_front;
15
+    bool    sumdiff_surround;
16
 
17
     int     nsubframes;
18
     int     nsubsubframes[MAX_SUBFRAMES];
19
@@ -94,7 +96,7 @@
20
 
21
     bool    dmix_coeffs_present;
22
     bool    dmix_embedded;
23
-    int     dmix_scale;
24
+    int     dmix_scale_inv;
25
     int     dmix_mask[MAX_CHANNELS];
26
     int     dmix_coeff[64];
27
 
28
@@ -118,21 +120,26 @@
29
     int                 *subband_buffer;
30
     int                 *subband_samples[MAX_CHANNELS][MAX_SUBBANDS];
31
     struct interpolator *subband_dsp[MAX_CHANNELS];
32
-    struct interpolator_data    *subband_dsp_data;
33
+    struct idct_context *subband_dsp_idct;
34
 
35
     int     *lfe_samples;
36
 
37
-    bool    xch_present;
38
+    bool    prim_dmix_embedded;
39
+    int     prim_dmix_type;
40
+    int     prim_dmix_coeff[4 * 6];
41
+
42
+    int     ext_audio_mask;
43
+
44
+    size_t  xch_pos;
45
 
46
-    bool    xxch_present;
47
     bool    xxch_crc_present;
48
     int     xxch_mask_nbits;
49
     int     xxch_core_mask;
50
+    int     xxch_spkr_mask;
51
+    size_t  xxch_pos;
52
 
53
-    bool    xbr_present;
54
-
55
-    bool                x96_present;
56
     struct x96_decoder  *x96_decoder;
57
+    size_t              x96_pos;
58
 
59
     int     *output_buffer;
60
     int     *output_samples[SPEAKER_COUNT];
61
@@ -140,7 +147,6 @@
62
 
63
     int     npcmsamples;
64
     int     output_rate;
65
-    int     bits_per_sample;
66
 
67
     int     filter_flags;
68
 };
69
@@ -152,5 +158,6 @@
70
 int core_filter(struct core_decoder *core, int flags);
71
 void core_clear(struct core_decoder *core);
72
 struct dcadec_core_info *core_get_info(struct core_decoder *core);
73
+struct dcadec_exss_info *core_get_info_exss(struct core_decoder *core);
74
 
75
 #endif
76
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/dca_context.cpp -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/dca_context.cpp Changed
201
 
1
@@ -21,12 +21,14 @@
2
 #include "exss_parser.h"
3
 #include "xll_decoder.h"
4
 #include "fixed_math.h"
5
-#include "dmix_tables.h"
6
 
7
 #define DCADEC_PACKET_CORE  0x01
8
 #define DCADEC_PACKET_EXSS  0x02
9
 #define DCADEC_PACKET_XLL   0x04
10
 
11
+#define DCADEC_PACKET_FILTERED  0x100
12
+#define DCADEC_PACKET_RECOVERY  0x200
13
+
14
 #define DCA_LOGCTX (&dca->logctx)
15
 
16
 struct dcadec_log_context {
17
@@ -37,6 +39,7 @@
18
 struct dcadec_context {
19
     int flags;
20
     int packet;
21
+    int status;
22
 
23
     struct core_decoder *core;
24
     struct exss_parser *exss;
25
@@ -44,7 +47,10 @@
26
 
27
     struct dcadec_log_context logctx;
28
 
29
-    unsigned int ncoreframes;
30
+    bool has_residual_encoded;
31
+    bool core_residual_valid;
32
+
33
+    int *dmix_sample_buffer;
34
 
35
     int nframesamples;
36
     int sample_rate;
37
@@ -88,7 +94,7 @@
38
 
39
     if (dca->flags & DCADEC_FLAG_NATIVE_LAYOUT) {
40
         for (int dca_ch = 0; dca_ch < SPEAKER_COUNT; dca_ch++) {
41
-            if (dca_mask & (1 << dca_ch)) {
42
+            if (dca_mask & (1U << dca_ch)) {
43
                 if (!dca_samples[dca_ch])
44
                     return -DCADEC_EINVAL;
45
                 dca->samples[nchannels++] = dca_samples[dca_ch];
46
@@ -126,38 +132,172 @@
47
     return nchannels;
48
 }
49
 
50
+static int clip_vector(int *samples, int nsamples, int bits_per_sample)
51
+{
52
+    int limit = 1 << (bits_per_sample - 1);
53
+    int mask = ~((1 << bits_per_sample) - 1);
54
+    int nclipped = 0;
55
+
56
+    while (nsamples-- > 0) {
57
+        if ((*samples + limit) & mask) {
58
+            *samples = (*samples >> 31) ^ (limit - 1);
59
+            nclipped++;
60
+        }
61
+        samples++;
62
+    }
63
+
64
+    return nclipped;
65
+}
66
+
67
+static int clip_samples(struct dcadec_context *dca, int nchannels)
68
+{
69
+    int nsamples = dca->nframesamples;
70
+    int nclipped = 0;
71
+
72
+    if (dca->flags & DCADEC_FLAG_DONT_CLIP)
73
+        return 0;
74
+
75
+    switch (dca->bits_per_sample) {
76
+    case 24:
77
+        for (int ch = 0; ch < nchannels; ch++)
78
+            nclipped += clip_vector(dca->samples[ch], nsamples, 24);
79
+        break;
80
+    case 16:
81
+        for (int ch = 0; ch < nchannels; ch++)
82
+            nclipped += clip_vector(dca->samples[ch], nsamples, 16);
83
+        break;
84
+    default:
85
+        dbg_assert(0);
86
+        break;
87
+    }
88
+
89
+    return nclipped;
90
+}
91
+
92
+static int down_mix_prim_chset(struct dcadec_context *dca, int **samples,
93
+                               int nsamples, int *ch_mask, int *dmix_coeff)
94
+{
95
+    // No action if already 2.0. Remove LFE channel if 2.1.
96
+    if ((*ch_mask & ~SPEAKER_MASK_LFE1) == (SPEAKER_MASK_L | SPEAKER_MASK_R)) {
97
+        *ch_mask = SPEAKER_MASK_L | SPEAKER_MASK_R;
98
+        return 0;
99
+    }
100
+
101
+    // Unless both KEEP_DMIX flags are set, perform 2.0 downmix only when
102
+    // custom matrix is present
103
+    if (!dmix_coeff && !(dca->flags & DCADEC_FLAG_KEEP_DMIX_6CH))
104
+        return 0;
105
+
106
+    // Reallocate downmix sample buffer
107
+    if (ta_alloc_fast(dca, &dca->dmix_sample_buffer, 2 * nsamples, sizeof(int)) < 0)
108
+        return -DCADEC_ENOMEM;
109
+
110
+    memset(dca->dmix_sample_buffer, 0, 2 * nsamples * sizeof(int));
111
+
112
+    int nchannels = dca_popcount(*ch_mask);
113
+
114
+    // Perform downmix
115
+    for (int spkr = 0, pos = 0; spkr < SPEAKER_COUNT; spkr++) {
116
+        if (!(*ch_mask & (1U << spkr)))
117
+            continue;
118
+
119
+        for (int ch = 0; ch < 2; ch++) {
120
+            int coeff;
121
+
122
+            // Use custom matrix if present. Otherwise use default matrix that
123
+            // covers all supported core audio channel arrangements.
124
+            if (dmix_coeff) {
125
+                coeff = dmix_coeff[ch * nchannels + pos];
126
+            } else {
127
+                switch (spkr) {
128
+                case SPEAKER_C:
129
+                case SPEAKER_Cs:
130
+                    coeff = (nchannels == 1) ? 23170 : 16423;
131
+                    break;
132
+                case SPEAKER_L:
133
+                    coeff = (ch == 0) ? 23170 : 0;
134
+                    break;
135
+                case SPEAKER_R:
136
+                    coeff = (ch == 1) ? 23170 : 0;
137
+                    break;
138
+                case SPEAKER_Ls:
139
+                    coeff = (ch == 0) ? 16423 : 0;
140
+                    break;
141
+                case SPEAKER_Rs:
142
+                    coeff = (ch == 1) ? 16423 : 0;
143
+                    break;
144
+                default:
145
+                    coeff = 0;
146
+                    break;
147
+                }
148
+            }
149
+
150
+            if (coeff) {
151
+                int *src = samples[spkr];
152
+                int *dst = dca->dmix_sample_buffer + ch * nsamples;
153
+                for (int n = 0; n < nsamples; n++)
154
+                    dst[n] += mul15(src[n], coeff);
155
+            }
156
+        }
157
+
158
+        pos++;
159
+    }
160
+
161
+    samples[SPEAKER_L] = dca->dmix_sample_buffer;
162
+    samples[SPEAKER_R] = dca->dmix_sample_buffer + nsamples;
163
+    *ch_mask = SPEAKER_MASK_L | SPEAKER_MASK_R;
164
+    return 0;
165
+}
166
+
167
 static int filter_core_frame(struct dcadec_context *dca)
168
 {
169
     struct core_decoder *core = dca->core;
170
 
171
-    dca->ncoreframes = 0;
172
+    dca->core_residual_valid = false;
173
 
174
     // Filter core frame
175
     int ret;
176
     if ((ret = core_filter(core, dca->flags)) < 0)
177
         return ret;
178
 
179
+    // Downmix core channels to Lo/Ro
180
+    if (dca->flags & DCADEC_FLAG_KEEP_DMIX_2CH) {
181
+        int *coeff = NULL;
182
+        if (core->prim_dmix_embedded && core->prim_dmix_type == DMIX_TYPE_LoRo)
183
+            coeff = core->prim_dmix_coeff;
184
+        if ((ret = down_mix_prim_chset(dca, core->output_samples, core->npcmsamples,
185
+                                       &core->ch_mask, coeff)) < 0)
186
+            return ret;
187
+    }
188
+
189
     // Reorder sample buffer pointers
190
-    if (reorder_samples(dca, core->output_samples, core->ch_mask) <= 0)
191
+    if ((ret = reorder_samples(dca, core->output_samples, core->ch_mask)) <= 0)
192
         return -DCADEC_EINVAL;
193
 
194
     dca->nframesamples = core->npcmsamples;
195
     dca->sample_rate = core->output_rate;
196
-    dca->bits_per_sample = core->bits_per_sample;
197
-    if (core->xbr_present || core->xxch_present)
198
+    dca->bits_per_sample = 24;
199
+
200
+    // Set profile
201
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/dca_context.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/dca_context.h Changed
194
 
1
@@ -29,12 +29,37 @@
2
 #endif
3
 
4
 /**@{*/
5
-#ifdef _WIN32
6
+/** Make compact version code that can be compared easily */
7
+#define DCADEC_VERSION_CODE(major, minor, patch) \
8
+    (((major) << 24) | ((minor) << 12) | (patch) | 0U)
9
+
10
+/**
11
+ * Version of libdcadec. Major number gets bumped at each API change that
12
+ * breaks backward compatibility. Minor number gets bumped at each API change
13
+ * that remains compatible. Patch is reserved for non-API related changes.
14
+ *
15
+ * THE LIBRARY IS NOT YET RELEASED, DON'T CHECK THESE NUMBERS YET.
16
+ */
17
+#define DCADEC_VERSION_MAJOR 0
18
+#define DCADEC_VERSION_MINOR 0
19
+#define DCADEC_VERSION_PATCH 0
20
+
21
+#define DCADEC_VERSION  \
22
+    DCADEC_VERSION_CODE(DCADEC_VERSION_MAJOR, \
23
+                        DCADEC_VERSION_MINOR, \
24
+                        DCADEC_VERSION_PATCH)
25
+/**@}*/
26
+
27
+/**@{*/
28
+#if (defined _WIN32)
29
 #define DCADEC_SHARED_EXPORT    __declspec(dllexport)
30
 #define DCADEC_SHARED_IMPORT    __declspec(dllimport)
31
-#else
32
+#elif (__GNUC__ >= 4)
33
 #define DCADEC_SHARED_EXPORT    __attribute__((visibility("default")))
34
 #define DCADEC_SHARED_IMPORT    __attribute__((visibility("default")))
35
+#else
36
+#define DCADEC_SHARED_EXPORT
37
+#define DCADEC_SHARED_IMPORT
38
 #endif
39
 
40
 #ifdef DCADEC_SHARED
41
@@ -76,23 +101,26 @@
42
  */
43
 #define DCADEC_FLAG_CORE_SYNTH_X96      0x04
44
 
45
-/** Force DTS core bit width reducion to source PCM resolution */
46
-#define DCADEC_FLAG_CORE_SOURCE_PCM_RES 0x08
47
+/** Reserved flag, don't use */
48
+#define DCADEC_FLAG_CORE_RESERVED       0x08
49
 
50
 /* Use FIR filter for floating point DTS core LFE channel interpolation */
51
 #define DCADEC_FLAG_CORE_LFE_FIR        0x10
52
 
53
-/** Extract embedded 2.0 downmix (NOT YET IMPLEMENTED) */
54
+/** Extract embedded 2.0 downmix if present, otherwise extract 5.1 downmix */
55
 #define DCADEC_FLAG_KEEP_DMIX_2CH       0x20
56
 
57
-/** Extract embedded 5.1 downmix (NOT YET IMPLEMENTED) */
58
+/** Extract embedded 5.1 downmix */
59
 #define DCADEC_FLAG_KEEP_DMIX_6CH       0x40
60
 
61
-/** Output native DTS channel layout, not WAVEFORMATEX layout */
62
+/** Output native DTS channel layout, not WAVEFORMATEXTENSIBLE layout */
63
 #define DCADEC_FLAG_NATIVE_LAYOUT       0x80
64
 
65
 /** Don't conceal errors */
66
 #define DCADEC_FLAG_STRICT              0x100
67
+
68
+/** Don't clip returned PCM samples to output bit depth */
69
+#define DCADEC_FLAG_DONT_CLIP           0x200
70
 /**@}*/
71
 
72
 /**@{*/
73
@@ -100,11 +128,22 @@
74
 #define DCADEC_PROFILE_DS       0x01    /**< Digital Surround */
75
 #define DCADEC_PROFILE_DS_96_24 0x02    /**< Digital Surround 96/24 */
76
 #define DCADEC_PROFILE_DS_ES    0x04    /**< Digital Surround ES */
77
-#define DCADEC_PROFILE_HD_HRA   0x08    /**< High-Resolution Audio */
78
+#define DCADEC_PROFILE_HD_HRA   0x08    /**< High Resolution Audio */
79
 #define DCADEC_PROFILE_HD_MA    0x10    /**< Master Audio */
80
 #define DCADEC_PROFILE_EXPRESS  0x20    /**< Express */
81
 /**@}*/
82
 
83
+/**@{*/
84
+/** Not matrix encoded */
85
+#define DCADEC_MATRIX_ENCODING_NONE         0
86
+
87
+/**< Encoded for matrix surround decoding */
88
+#define DCADEC_MATRIX_ENCODING_SURROUND     1
89
+
90
+/**< Audio processed for headphone playback */
91
+#define DCADEC_MATRIX_ENCODING_HEADPHONE    2
92
+/**@}*/
93
+
94
 /**
95
  * Size in bytes of empty padding that must be present after the end of input
96
  * buffer. libdcadec may overread the input buffer up to this number of bytes.
97
@@ -123,10 +162,9 @@
98
     int     bit_rate;       /**< Core stream bit rate in bytes per second,
99
                                  zero or negative if unavailable */
100
     int     npcmblocks;     /**< Number of audio sample blocks in a frame */
101
-    bool    xch_present;    /**< XCH extension data present and valid */
102
-    bool    xxch_present;   /**< XXCH extension data present and valid */
103
-    bool    xbr_present;    /**< XBR extension data present and valid */
104
-    bool    x96_present;    /**< X96 extension data present and valid */
105
+    bool    ext_audio_present;  /**< Extended audio present */
106
+    int     ext_audio_type;     /**< Extended audio type (only meaningful
107
+                                     when ext_audio_present is true) */
108
 };
109
 
110
 struct dcadec_exss_info {
111
@@ -137,6 +175,8 @@
112
     int profile;            /**< Type of DTS profile encoded */
113
     bool embedded_stereo;   /**< 2.0 downmix has been embedded into the stream */
114
     bool embedded_6ch;      /**< 5.1 downmix has been embedded into the stream */
115
+    int spkr_mask;          /**< Speaker activity mask, zero if unavailable */
116
+    int matrix_encoding;    /**< Matrix encoding type */
117
 };
118
 
119
 typedef void (*dcadec_log_fn)(void* log_context,const char* message,unsigned int lineno);
120
@@ -178,8 +218,7 @@
121
 
122
 /**
123
  * Get information about extension sub-stream (EXSS) payload of the parsed
124
- * packet. When no EXSS is present but backward compatible DTS core sub-stream
125
- * contains extended audio, then information about extended audio in core
126
+ * packet. When no EXSS is present information about extended audio in core
127
  * sub-stream is returned.
128
  *
129
  * @param dca   Pointer to decoder context.
130
@@ -199,8 +238,9 @@
131
 
132
 /**
133
  * Filter the parsed packet and return per-channel PCM data. All parameters
134
- * except decoder context are optional and can be NULL. This function should
135
- * be called exactly once after successfull call to dcadec_context_parse().
136
+ * except decoder context are optional and can be NULL. This function should be
137
+ * called at least once after each successfull call to dcadec_context_parse().
138
+ * Multiple calls per packet are allowed and return the same data.
139
  *
140
  * @param dca       Pointer to decoder context.
141
  *
142
@@ -210,9 +250,9 @@
143
  *                  Returned array is tightly packed, there are no gaps for
144
  *                  missing channels. Use channel_mask to determine total number
145
  *                  of channels and size of returned array. By default channels
146
- *                  are ordered according to WAVEFORMATEX specification, but if
147
- *                  DCADEC_FLAG_NATIVE_LAYOUT flag was set when creating decoder
148
- *                  context, returned channels are in native DTS order.
149
+ *                  are ordered according to WAVEFORMATEXTENSIBLE specification,
150
+ *                  but if DCADEC_FLAG_NATIVE_LAYOUT flag was set when creating
151
+ *                  decoder context, returned channels are in native DTS order.
152
  *
153
  * @param nsamples  Filled with number of PCM samples in each returned plane.
154
  *
155
@@ -231,7 +271,12 @@
156
  *                          This can be different from encoded profile since
157
  *                          certain extensions may be not decoded.
158
  *
159
- * @return                  0 on success, negative error code on failure.
160
+ * @return                  0 or positive value on success, negative error code
161
+ *                          on failure. Return value of 0 indicates that no
162
+ *                          errors affecting audio integrity were detected.
163
+ *                          When profile indicates Master Audio, positive return
164
+ *                          value indicates that audio has not been losslessly
165
+ *                          reconstructed for at least some part of this frame.
166
  */
167
 DCADEC_API int dcadec_context_filter(struct dcadec_context *dca, int ***samples,
168
                                      int *nsamples, int *channel_mask,
169
@@ -239,7 +284,9 @@
170
                                      int *profile);
171
 
172
 /**
173
- * Clear all inter-frame history of the decoder.
174
+ * Clear all inter-frame history of the decoder. Call this before parsing
175
+ * packets out of sequence, e.g. after seeking to the arbitrary position within
176
+ * the DTS stream.
177
  *
178
  * @param dca   Pointer to decoder context.
179
  */
180
@@ -271,6 +318,13 @@
181
 DCADEC_API const char *dcadec_strerror(int errnum);
182
 
183
 /**
184
+ * Get libdcadec version.
185
+ *
186
+ * @return  Version code of the currently running libdcadec.
187
+ */
188
+DCADEC_API unsigned int dcadec_version(void);
189
+
190
+/**
191
  * Set logging function for debug messages.
192
  *
193
  * @param dca           Pointer to decoder context.
194
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/dca_stream.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/dca_stream.h Changed
81
 
1
@@ -23,9 +23,78 @@
2
 
3
 struct dcadec_stream;
4
 
5
-DCADEC_API struct dcadec_stream *dcadec_stream_open(const char *name);
6
+struct dcadec_stream_info {
7
+    uint64_t    stream_size;    /**< Size of encoded DTS stream data, in bytes */
8
+    uint32_t    sample_rate;    /**< Audio sample rate in Hz */
9
+    uint32_t    nframes;        /**< Total number of encoded frames */
10
+    uint32_t    nframesamples;  /**< Number of PCM samples in each encoded frame */
11
+    uint64_t    npcmsamples;    /**< Total number of PCM samples in original audio */
12
+    uint32_t    ch_mask;        /**< Channel mask in EXSS format */
13
+    uint32_t    ndelaysamples;  /**< Codec delay in PCM samples */
14
+};
15
+
16
+/**
17
+ * Open DTS stream from file or standard input.
18
+ *
19
+ * @param name  Name of the file to be opened. Pass NULL to open standard input.
20
+ *
21
+ * @param flags Currently unused, should be 0.
22
+ *
23
+ * @return      Stream handle on success, NULL on failure.
24
+ */
25
+DCADEC_API struct dcadec_stream *dcadec_stream_open(const char *name, int flags);
26
+
27
+/**
28
+ * Close DTS stream.
29
+ *
30
+ * @param stream    Stream handle.
31
+ */
32
 DCADEC_API void dcadec_stream_close(struct dcadec_stream *stream);
33
+
34
+/**
35
+ * Establish synchronization and read the next packet from DTS stream.
36
+ *
37
+ * @param stream    Stream handle.
38
+ *
39
+ * @param data  Filled with pointer to packet data. This data is only
40
+ *              valid until the next call to dcadec_stream_read() or
41
+ *              dcadec_stream_close() functions. Packet data is padded
42
+ *              with DCADEC_BUFFER_PADDING bytes at the end and can be
43
+ *              directly passed to dcadec_context_parse() function.
44
+ *
45
+ * @param size  Filled with size of packet data, in bytes.
46
+ *
47
+ * @return      Positive value on success, 0 on EOF, negative error code on
48
+ *              failure.
49
+ */
50
 DCADEC_API int dcadec_stream_read(struct dcadec_stream *stream, uint8_t **data, size_t *size);
51
+
52
+/**
53
+ * Return DTS stream progress percentage based on current file position.
54
+ *
55
+ * @param stream    Stream handle.
56
+ *
57
+ * @return      Progress value in range 0-100 on success, -1 on failure.
58
+ */
59
 DCADEC_API int dcadec_stream_progress(struct dcadec_stream *stream);
60
 
61
+/**
62
+ * Get audio properties information from DTS-HD container. For raw DTS streams
63
+ * this function always fails.
64
+ *
65
+ * @param stream    Stream handle.
66
+ *
67
+ * @return      Pointer to information structure on success,
68
+ *              NULL on failure. Returned data should be freed with
69
+ *              dcadec_stream_free_info() function.
70
+ */
71
+DCADEC_API struct dcadec_stream_info *dcadec_stream_get_info(struct dcadec_stream *stream);
72
+
73
+/**
74
+ * Free audio properties information structure.
75
+ *
76
+ * @param info  Pointer to information structure.
77
+ */
78
+DCADEC_API void dcadec_stream_free_info(struct dcadec_stream_info *info);
79
+
80
 #endif
81
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/dmix_tables.cpp -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/dmix_tables.cpp Changed
9
 
1
@@ -80,3 +80,7 @@
2
       73533,   72482,   71446,   70425,   69419,   68427,   67450,   66486,
3
       65536
4
 };
5
+
6
+extern const uint8_t dmix_primary_nch[7] = {
7
+    1, 2, 2, 3, 3, 4, 4
8
+};
9
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/dmix_tables.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/dmix_tables.h Changed
8
 
1
@@ -21,5 +21,6 @@
2
 
3
 extern const uint16_t dmix_table[241];
4
 extern const uint32_t dmix_table_inv[201];
5
+extern const uint8_t dmix_primary_nch[7];
6
 
7
 #endif
8
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/exss_parser.cpp -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/exss_parser.cpp Changed
201
 
1
@@ -32,6 +32,8 @@
2
     return dca_popcount(mask) + dca_popcount(mask & SPEAKER_PAIR_ALL_2);
3
 }
4
 
5
+#define DCA_LOGCTX (asset->parser->bits.logctx)
6
+
7
 static void parse_xll_parameters(struct exss_asset *asset)
8
 {
9
     struct exss_parser *exss = asset->parser;
10
@@ -67,74 +69,6 @@
11
         bits_skip(&exss->bits, 2);
12
 }
13
 
14
-static int set_extension_offsets(struct exss_asset *asset)
15
-{
16
-    size_t offs = asset->asset_offset;
17
-    size_t size = asset->asset_size;
18
-
19
-    if (asset->extension_mask & EXSS_CORE) {
20
-        asset->core_offset = offs;
21
-        if (offs & 3)
22
-            return -DCADEC_EBADREAD;
23
-        if (asset->core_size > size)
24
-            return -DCADEC_EBADREAD;
25
-        offs += asset->core_size;
26
-        size -= asset->core_size;
27
-    }
28
-
29
-    if (asset->extension_mask & EXSS_XBR) {
30
-        asset->xbr_offset = offs;
31
-        if (offs & 3)
32
-            return -DCADEC_EBADREAD;
33
-        if (asset->xbr_size > size)
34
-            return -DCADEC_EBADREAD;
35
-        offs += asset->xbr_size;
36
-        size -= asset->xbr_size;
37
-    }
38
-
39
-    if (asset->extension_mask & EXSS_XXCH) {
40
-        asset->xxch_offset = offs;
41
-        if (offs & 3)
42
-            return -DCADEC_EBADREAD;
43
-        if (asset->xxch_size > size)
44
-            return -DCADEC_EBADREAD;
45
-        offs += asset->xxch_size;
46
-        size -= asset->xxch_size;
47
-    }
48
-
49
-    if (asset->extension_mask & EXSS_X96) {
50
-        asset->x96_offset = offs;
51
-        if (offs & 3)
52
-            return -DCADEC_EBADREAD;
53
-        if (asset->x96_size > size)
54
-            return -DCADEC_EBADREAD;
55
-        offs += asset->x96_size;
56
-        size -= asset->x96_size;
57
-    }
58
-
59
-    if (asset->extension_mask & EXSS_LBR) {
60
-        asset->lbr_offset = offs;
61
-        if (offs & 3)
62
-            return -DCADEC_EBADREAD;
63
-        if (asset->lbr_size > size)
64
-            return -DCADEC_EBADREAD;
65
-        offs += asset->lbr_size;
66
-        size -= asset->lbr_size;
67
-    }
68
-
69
-    if (asset->extension_mask & EXSS_XLL) {
70
-        asset->xll_offset = offs;
71
-        if (offs & 3)
72
-            return -DCADEC_EBADREAD;
73
-        if (asset->xll_size > size)
74
-            return -DCADEC_EBADREAD;
75
-        offs += asset->xll_size;
76
-        size -= asset->xll_size;
77
-    }
78
-
79
-    return 0;
80
-}
81
-
82
 static int parse_descriptor(struct exss_asset *asset)
83
 {
84
     struct exss_parser *exss = asset->parser;
85
@@ -191,18 +125,21 @@
86
             if (asset->nchannels_total > 6)
87
                 asset->embedded_6ch = bits_get1(&exss->bits);
88
 
89
-            int spkr_mask_nbits = 16; // ???
90
-
91
             // Speaker mask enabled flag
92
-            if (bits_get1(&exss->bits)) {
93
+            asset->spkr_mask_enabled = bits_get1(&exss->bits);
94
+
95
+            int spkr_mask_nbits = 0;
96
+            if (asset->spkr_mask_enabled) {
97
                 // Number of bits for speaker activity mask
98
                 spkr_mask_nbits = (bits_get(&exss->bits, 2) + 1) << 2;
99
                 // Loudspeaker activity mask
100
-                bits_skip(&exss->bits, spkr_mask_nbits);
101
+                asset->spkr_mask = bits_get(&exss->bits, spkr_mask_nbits);
102
             }
103
 
104
             // Number of speaker remapping sets
105
             int spkr_remap_nsets = bits_get(&exss->bits, 3);
106
+            enforce(!spkr_remap_nsets || spkr_mask_nbits,
107
+                    "Speaker mask disabled yet there are remapping sets");
108
 
109
             // Standard loudspeaker layout mask
110
             int nspeakers[8];
111
@@ -223,6 +160,9 @@
112
         } else {
113
             asset->embedded_stereo = false;
114
             asset->embedded_6ch = false;
115
+            asset->spkr_mask_enabled = false;
116
+            asset->spkr_mask = 0;
117
+
118
             // Representation type
119
             asset->representation_type = bits_get(&exss->bits, 3);
120
         }
121
@@ -353,18 +293,76 @@
122
         // DTS-HD stream ID
123
         asset->hd_stream_id = bits_get(&exss->bits, 3);
124
 
125
-    int ret;
126
-    if ((ret = set_extension_offsets(asset)) < 0)
127
-        return ret;
128
-
129
+    // One to one mixing flag
130
+    // Per channel main audio scaling flag
131
+    // Main audio scaling codes
132
+    // Decode asset in secondary decoder flag
133
+    // Revision 2 DRC metadata
134
     // Reserved
135
     // Zero pad
136
     return bits_seek(&exss->bits, descr_pos + descr_size * 8);
137
 }
138
 
139
+static int set_exss_offsets(struct exss_asset *asset)
140
+{
141
+    size_t offs = asset->asset_offset;
142
+    size_t size = asset->asset_size;
143
+
144
+    if (asset->extension_mask & EXSS_CORE) {
145
+        asset->core_offset = offs;
146
+        if (offs & 3 || asset->core_size > size)
147
+            return -DCADEC_EBADREAD;
148
+        offs += asset->core_size;
149
+        size -= asset->core_size;
150
+    }
151
+
152
+    if (asset->extension_mask & EXSS_XBR) {
153
+        asset->xbr_offset = offs;
154
+        if (offs & 3 || asset->xbr_size > size)
155
+            return -DCADEC_EBADREAD;
156
+        offs += asset->xbr_size;
157
+        size -= asset->xbr_size;
158
+    }
159
+
160
+    if (asset->extension_mask & EXSS_XXCH) {
161
+        asset->xxch_offset = offs;
162
+        if (offs & 3 || asset->xxch_size > size)
163
+            return -DCADEC_EBADREAD;
164
+        offs += asset->xxch_size;
165
+        size -= asset->xxch_size;
166
+    }
167
+
168
+    if (asset->extension_mask & EXSS_X96) {
169
+        asset->x96_offset = offs;
170
+        if (offs & 3 || asset->x96_size > size)
171
+            return -DCADEC_EBADREAD;
172
+        offs += asset->x96_size;
173
+        size -= asset->x96_size;
174
+    }
175
+
176
+    if (asset->extension_mask & EXSS_LBR) {
177
+        asset->lbr_offset = offs;
178
+        if (offs & 3 || asset->lbr_size > size)
179
+            return -DCADEC_EBADREAD;
180
+        offs += asset->lbr_size;
181
+        size -= asset->lbr_size;
182
+    }
183
+
184
+    if (asset->extension_mask & EXSS_XLL) {
185
+        asset->xll_offset = offs;
186
+        if (offs & 3 || asset->xll_size > size)
187
+            return -DCADEC_EBADREAD;
188
+        offs += asset->xll_size;
189
+        size -= asset->xll_size;
190
+    }
191
+
192
+    return 0;
193
+}
194
+
195
+#undef DCA_LOGCTX
196
 #define DCA_LOGCTX (exss->bits.logctx)
197
 
198
-int exss_parse(struct exss_parser *exss, uint8_t *data, size_t size,struct dcadec_log_context *logctx)
199
+int exss_parse(struct exss_parser *exss, uint8_t *data, size_t size, struct dcadec_log_context *logctx)
200
 {
201
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/exss_parser.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/exss_parser.h Changed
19
 
1
@@ -36,6 +36,8 @@
2
     bool    one_to_one_map_ch_to_spkr;
3
     bool    embedded_stereo;
4
     bool    embedded_6ch;
5
+    bool    spkr_mask_enabled;
6
+    int     spkr_mask;
7
     int     representation_type;
8
 
9
     int     coding_mode;
10
@@ -85,6 +87,7 @@
11
 
12
 extern const uint32_t exss_sample_rates[16];
13
 
14
-int exss_parse(struct exss_parser *exss, uint8_t *data, size_t size,struct dcadec_log_context *logctx);
15
+int exss_parse(struct exss_parser *exss, uint8_t *data, size_t size, struct dcadec_log_context *logctx);
16
+struct dcadec_exss_info *exss_get_info(struct exss_parser *exss);
17
 
18
 #endif
19
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/fir_float.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/fir_float.h Changed
10
 
1
@@ -804,7 +804,7 @@
2
      2.164336300E-04,  1.887860900E-04,  1.635869100E-04,  5.316857100E-04
3
 };
4
 
5
-#define SCALE(x)    ((x) * M_SQRT2 * 512)
6
+#define SCALE(x)    ((x) * M_SQRT2 * 256)
7
 
8
 // Annex D.9 - 1024 tap FIR for X96 synthesis QMF
9
 static const double band_fir_x96[1024] = {
10
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/fixed_math.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/fixed_math.h Changed
14
 
1
@@ -75,9 +75,12 @@
2
 static inline int32_t mul15(int32_t a, int32_t b) { return mul__(a, b, 15); }
3
 static inline int32_t mul16(int32_t a, int32_t b) { return mul__(a, b, 16); }
4
 static inline int32_t mul17(int32_t a, int32_t b) { return mul__(a, b, 17); }
5
+static inline int32_t mul22(int32_t a, int32_t b) { return mul__(a, b, 22); }
6
 static inline int32_t mul23(int32_t a, int32_t b) { return mul__(a, b, 23); }
7
 static inline int32_t mul31(int32_t a, int32_t b) { return mul__(a, b, 31); }
8
 
9
+static inline int32_t clip15(int32_t a) { return clip__(a, 15); }
10
+static inline int32_t clip19(int32_t a) { return clip__(a, 19); }
11
 static inline int32_t clip23(int32_t a) { return clip__(a, 23); }
12
 
13
 #endif
14
makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/idct.h Added
49
 
1
@@ -0,0 +1,47 @@
2
+/*
3
+ * This file is part of libdcadec.
4
+ *
5
+ * This library is free software; you can redistribute it and/or modify it
6
+ * under the terms of the GNU Lesser General Public License as published by the
7
+ * Free Software Foundation; either version 2.1 of the License, or (at your
8
+ * option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful, but WITHOUT
11
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
13
+ * for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General Public License
16
+ * along with this library; if not, write to the Free Software Foundation,
17
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+ */
19
+
20
+#ifndef IDCT_H
21
+#define IDCT_H
22
+
23
+struct core_decoder;
24
+
25
+struct idct_context {
26
+    double dct_a[8][8];
27
+    double dct_b[8][7];
28
+
29
+    double mod_a[16];
30
+    double mod_b[ 8];
31
+    double mod_c[32];
32
+
33
+    double mod64_a[32];
34
+    double mod64_b[16];
35
+    double mod64_c[64];
36
+};
37
+
38
+struct idct_context *idct_init(struct core_decoder *parent);
39
+
40
+void idct_perform32_float(const struct idct_context * restrict idct,
41
+                          double * restrict input, double * restrict output);
42
+void idct_perform64_float(const struct idct_context * restrict idct,
43
+                          double * restrict input, double * restrict output);
44
+
45
+void idct_perform32_fixed(int * restrict input, int * restrict output);
46
+void idct_perform64_fixed(int * restrict input, int * restrict output);
47
+
48
+#endif
49
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/idct_fixed.cpp -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/idct_fixed.cpp Changed
166
 
1
@@ -18,41 +18,35 @@
2
 
3
 #include "common.h"
4
 #include "fixed_math.h"
5
-#include "idct_fixed.h"
6
+#include "idct.h"
7
 
8
-static inline void sum_a(const int *input, int *output, int len)
9
+static void sum_a(const int * restrict input, int * restrict output, int len)
10
 {
11
     for (int i = 0; i < len; i++)
12
         output[i] = input[2 * i] + input[2 * i + 1];
13
 }
14
 
15
-static inline void sum_b(const int *input, int *output, int len)
16
+static void sum_b(const int * restrict input, int * restrict output, int len)
17
 {
18
-    for (int i = 0; i < len; i++) {
19
-        if (i > 0)
20
-            output[i] = input[2 * i] + input[2 * i - 1];
21
-        else
22
-            output[i] = input[2 * i];
23
-    }
24
+    output[0] = input[0];
25
+    for (int i = 1; i < len; i++)
26
+        output[i] = input[2 * i] + input[2 * i - 1];
27
 }
28
 
29
-static inline void sum_c(const int *input, int *output, int len)
30
+static void sum_c(const int * restrict input, int * restrict output, int len)
31
 {
32
     for (int i = 0; i < len; i++)
33
         output[i] = input[2 * i];
34
 }
35
 
36
-static inline void sum_d(const int *input, int *output, int len)
37
+static void sum_d(const int * restrict input, int * restrict output, int len)
38
 {
39
-    for (int i = 0; i < len; i++) {
40
-        if (i > 0)
41
-            output[i] = input[2 * i - 1] + input[2 * i + 1];
42
-        else
43
-            output[i] = input[2 * i + 1];
44
-    }
45
+    output[0] = input[1];
46
+    for (int i = 1; i < len; i++)
47
+        output[i] = input[2 * i - 1] + input[2 * i + 1];
48
 }
49
 
50
-static inline void dct_a(const int *input, int *output)
51
+static void dct_a(const int * restrict input, int * restrict output)
52
 {
53
     //  floor(sin((2 * i + 1) * (2 * (7 - j) + 1) * PI / 32) * (1 << 23) + 0.5), i = 2 * k
54
     // -floor(sin((2 * i + 1) * (2 * (7 - j) + 1) * PI / 32) * (1 << 23) + 0.5), i = 2 * k + 1
55
@@ -75,7 +69,7 @@
56
     }
57
 }
58
 
59
-static inline void dct_b(const int *input, int *output)
60
+static void dct_b(const int * restrict input, int * restrict output)
61
 {
62
     // floor(cos((2 * i + 1) * (j + 1) * PI / 16) * (1 << 23) + 0.5)
63
     static const int cos_mod[8][7] = {
64
@@ -90,14 +84,14 @@
65
     };
66
 
67
     for (int i = 0; i < 8; i++) {
68
-        int64_t res = (int64_t)input[0] << 23;
69
+        int64_t res = (int64_t)input[0] * (1 << 23);
70
         for (int j = 0; j < 7; j++)
71
             res += (int64_t)cos_mod[i][j] * input[1 + j];
72
         output[i] = norm23(res);
73
     }
74
 }
75
 
76
-static inline void mod_a(const int *input, int *output)
77
+static void mod_a(const int * restrict input, int * restrict output)
78
 {
79
     //  floor(0.5 / cos((2 * (     i) + 1) * PI / 64) * (1 << 23) + 0.5), i = 0 ..  8
80
     // -floor(0.5 / sin((2 * (15 - i) + 1) * PI / 64) * (1 << 23) + 0.5), i = 8 .. 16
81
@@ -115,7 +109,7 @@
82
         output[i] = mul23(cos_mod[i], input[k] - input[8 + k]);
83
 }
84
 
85
-static inline void mod_b(int *input, int *output)
86
+static void mod_b(int * restrict input, int * restrict output)
87
 {
88
     // floor(0.5 / cos((2 * (    i) + 1) * PI / 32) * (1 << 23) + 0.5), i = 0 .. 4
89
     // floor(0.5 / sin((2 * (7 - i) + 1) * PI / 32) * (1 << 23) + 0.5), i = 4 .. 8
90
@@ -134,7 +128,7 @@
91
         output[i] = input[k] - input[8 + k];
92
 }
93
 
94
-static inline void mod_c(const int *input, int *output)
95
+static void mod_c(const int * restrict input, int * restrict output)
96
 {
97
     //  floor(0.125 / cos((2 * (     i) + 1) * PI / 128) * (1 << 23) + 0.5), i =  0 .. 16
98
     // -floor(0.125 / sin((2 * (31 - i) + 1) * PI / 128) * (1 << 23) + 0.5), i = 16 .. 32
99
@@ -156,13 +150,13 @@
100
         output[i] = mul23(cos_mod[i], input[k] - input[16 + k]);
101
 }
102
 
103
-static inline void clp_v(int *input, int len)
104
+static void clp_v(int *input, int len)
105
 {
106
     for (int i = 0; i < len; i++)
107
         input[i] = clip23(input[i]);
108
 }
109
 
110
-void inverse_dct32_fixed(int *input, int *output)
111
+void idct_perform32_fixed(int * restrict input, int * restrict output)
112
 {
113
     int mag = 0;
114
     for (int i = 0; i < 32; i++)
115
@@ -197,10 +191,10 @@
116
     mod_c(input, output);
117
 
118
     for (int i = 0; i < 32; i++)
119
-        output[i] = clip23(output[i] << shift);
120
+        output[i] = clip23(output[i] * (1 << shift));
121
 }
122
 
123
-static inline void mod64_a(const int *input, int *output)
124
+static void mod64_a(const int * restrict input, int * restrict output)
125
 {
126
     //  floor(0.5 / cos((2 * (     i) + 1) * PI / 128) * (1 << 23) + 0.5), i =  0 .. 16
127
     // -floor(0.5 / sin((2 * (31 - i) + 1) * PI / 128) * (1 << 23) + 0.5), i = 16 .. 32
128
@@ -222,7 +216,7 @@
129
         output[i] = mul23(cos_mod[i], input[k] - input[16 + k]);
130
 }
131
 
132
-static inline void mod64_b(int *input, int *output)
133
+static void mod64_b(int * restrict input, int * restrict output)
134
 {
135
     // floor(0.5 / cos((2 * (     i) + 1) * PI / 64) * (1 << 23) + 0.5), i = 0 ..  8
136
     // floor(0.5 / sin((2 * (15 - i) + 1) * PI / 64) * (1 << 23) + 0.5), i = 8 .. 16
137
@@ -243,7 +237,7 @@
138
         output[i] = input[k] - input[16 + k];
139
 }
140
 
141
-static inline void mod64_c(const int *input, int *output)
142
+static void mod64_c(const int * restrict input, int * restrict output)
143
 {
144
     //  floor(0.125 / SQRT2 / cos((2 * (     i) + 1) * PI / 256) * (1 << 23) + 0.5), i =  0 .. 32
145
     // -floor(0.125 / SQRT2 / sin((2 * (63 - i) + 1) * PI / 256) * (1 << 23) + 0.5), i = 32 .. 64
146
@@ -273,10 +267,10 @@
147
         output[i] = mul23(cos_mod[i], input[k] - input[32 + k]);
148
 }
149
 
150
-void inverse_dct64_fixed(int *input, int *output)
151
+void idct_perform64_fixed(int * restrict input, int * restrict output)
152
 {
153
     int mag = 0;
154
-    for (int i = 0; i < 32; i++)
155
+    for (int i = 0; i < 64; i++)
156
         mag += abs(input[i]);
157
 
158
     int shift = mag > 0x400000 ? 2 : 0;
159
@@ -328,5 +322,5 @@
160
     mod64_c(input, output);
161
 
162
     for (int i = 0; i < 64; i++)
163
-        output[i] = clip23(output[i] << shift);
164
+        output[i] = clip23(output[i] * (1 << shift));
165
 }
166
makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/idct_float.cpp Added
201
 
1
@@ -0,0 +1,256 @@
2
+/*
3
+ * This file is part of libdcadec.
4
+ *
5
+ * This library is free software; you can redistribute it and/or modify it
6
+ * under the terms of the GNU Lesser General Public License as published by the
7
+ * Free Software Foundation; either version 2.1 of the License, or (at your
8
+ * option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful, but WITHOUT
11
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
13
+ * for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General Public License
16
+ * along with this library; if not, write to the Free Software Foundation,
17
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
+ */
19
+
20
+#include "common.h"
21
+#include "idct.h"
22
+
23
+struct idct_context *idct_init(struct core_decoder *parent)
24
+{
25
+    int i, j, k;
26
+
27
+    struct idct_context *idct = ta_new(parent, struct idct_context);
28
+    if (!idct)
29
+        return NULL;
30
+
31
+    for (i = 0; i < 8; i++) {
32
+        for (j = 0, k = 7; j < 8; j++, k--) {
33
+            if (i & 1)
34
+                idct->dct_a[i][j] = -sin((2 * i + 1) * (2 * k + 1) * M_PI / 32);
35
+            else
36
+                idct->dct_a[i][j] =  sin((2 * i + 1) * (2 * k + 1) * M_PI / 32);
37
+        }
38
+    }
39
+
40
+    for (i = 0; i < 8; i++)
41
+        for (j = 0; j < 7; j++)
42
+            idct->dct_b[i][j] = cos((2 * i + 1) * (1 + j) * M_PI / 16);
43
+
44
+    for (i = 0; i < 8; i++)
45
+        idct->mod_a[i] =  0.5 / cos((2 * i + 1) * M_PI / 64);
46
+
47
+    for (i = 8, k = 7; i < 16; i++, k--)
48
+        idct->mod_a[i] = -0.5 / sin((2 * k + 1) * M_PI / 64);
49
+
50
+    for (i = 0; i < 4; i++)
51
+        idct->mod_b[i] = 0.5 / cos((2 * i + 1) * M_PI / 32);
52
+
53
+    for (i = 4, k = 3; i < 8; i++, k--)
54
+        idct->mod_b[i] = 0.5 / sin((2 * k + 1) * M_PI / 32);
55
+
56
+    for (i = 0; i < 16; i++)
57
+        idct->mod_c[i] =  0.125 / cos((2 * i + 1) * M_PI / 128);
58
+
59
+    for (i = 16, k = 15; i < 32; i++, k--)
60
+        idct->mod_c[i] = -0.125 / sin((2 * k + 1) * M_PI / 128);
61
+
62
+    for (i = 0; i < 16; i++)
63
+        idct->mod64_a[i] =  0.5 / cos((2 * i + 1) * M_PI / 128);
64
+
65
+    for (i = 16, k = 15; i < 32; i++, k--)
66
+        idct->mod64_a[i] = -0.5 / sin((2 * k + 1) * M_PI / 128);
67
+
68
+    for (i = 0; i < 8; i++)
69
+        idct->mod64_b[i] = 0.5 / cos((2 * i + 1) * M_PI / 64);
70
+
71
+    for (i = 8, k = 7; i < 16; i++, k--)
72
+        idct->mod64_b[i] = 0.5 / sin((2 * k + 1) * M_PI / 64);
73
+
74
+    for (i = 0; i < 32; i++)
75
+        idct->mod64_c[i] =  0.125 / cos((2 * i + 1) * M_PI / 256);
76
+
77
+    for (i = 32, k = 31; i < 64; i++, k--)
78
+        idct->mod64_c[i] = -0.125 / sin((2 * k + 1) * M_PI / 256);
79
+
80
+    return idct;
81
+}
82
+
83
+static void sum_a(const double * restrict input, double * restrict output, int len)
84
+{
85
+    for (int i = 0; i < len; i++)
86
+        output[i] = input[2 * i] + input[2 * i + 1];
87
+}
88
+
89
+static void sum_b(const double * restrict input, double * restrict output, int len)
90
+{
91
+    output[0] = input[0];
92
+    for (int i = 1; i < len; i++)
93
+        output[i] = input[2 * i] + input[2 * i - 1];
94
+}
95
+
96
+static void sum_c(const double * restrict input, double * restrict output, int len)
97
+{
98
+    for (int i = 0; i < len; i++)
99
+        output[i] = input[2 * i];
100
+}
101
+
102
+static void sum_d(const double * restrict input, double * restrict output, int len)
103
+{
104
+    output[0] = input[1];
105
+    for (int i = 1; i < len; i++)
106
+        output[i] = input[2 * i - 1] + input[2 * i + 1];
107
+}
108
+
109
+static void dct_a(const struct idct_context * restrict idct,
110
+                  const double * restrict input, double * restrict output)
111
+{
112
+    for (int i = 0; i < 8; i++) {
113
+        double res = 0.0;
114
+        for (int j = 0; j < 8; j++)
115
+            res += idct->dct_a[i][j] * input[j];
116
+        output[i] = res;
117
+    }
118
+}
119
+
120
+static void dct_b(const struct idct_context * restrict idct,
121
+                  const double * restrict input, double * restrict output)
122
+{
123
+    for (int i = 0; i < 8; i++) {
124
+        double res = input[0];
125
+        for (int j = 0; j < 7; j++)
126
+            res += idct->dct_b[i][j] * input[1 + j];
127
+        output[i] = res;
128
+    }
129
+}
130
+
131
+static void mod_a(const struct idct_context * restrict idct,
132
+                  const double * restrict input, double * restrict output)
133
+{
134
+    for (int i = 0; i < 8; i++)
135
+        output[i] = idct->mod_a[i] * (input[i] + input[8 + i]);
136
+
137
+    for (int i = 8, k = 7; i < 16; i++, k--)
138
+        output[i] = idct->mod_a[i] * (input[k] - input[8 + k]);
139
+}
140
+
141
+static void mod_b(const struct idct_context * restrict idct,
142
+                  double * restrict input, double * restrict output)
143
+{
144
+    for (int i = 0; i < 8; i++)
145
+        input[8 + i] = idct->mod_b[i] * input[8 + i];
146
+
147
+    for (int i = 0; i < 8; i++)
148
+        output[i] = input[i] + input[8 + i];
149
+
150
+    for (int i = 8, k = 7; i < 16; i++, k--)
151
+        output[i] = input[k] - input[8 + k];
152
+}
153
+
154
+static void mod_c(const struct idct_context * restrict idct,
155
+                  const double * restrict input, double * restrict output)
156
+{
157
+    for (int i = 0; i < 16; i++)
158
+        output[i] = idct->mod_c[i] * (input[i] + input[16 + i]);
159
+
160
+    for (int i = 16, k = 15; i < 32; i++, k--)
161
+        output[i] = idct->mod_c[i] * (input[k] - input[16 + k]);
162
+}
163
+
164
+void idct_perform32_float(const struct idct_context * restrict idct,
165
+                          double * restrict input, double * restrict output)
166
+{
167
+    sum_a(input, output +  0, 16);
168
+    sum_b(input, output + 16, 16);
169
+
170
+    sum_a(output +  0, input +  0, 8);
171
+    sum_b(output +  0, input +  8, 8);
172
+    sum_c(output + 16, input + 16, 8);
173
+    sum_d(output + 16, input + 24, 8);
174
+
175
+    dct_a(idct, input +  0, output +  0);
176
+    dct_b(idct, input +  8, output +  8);
177
+    dct_b(idct, input + 16, output + 16);
178
+    dct_b(idct, input + 24, output + 24);
179
+
180
+    mod_a(idct, output +  0, input +  0);
181
+    mod_b(idct, output + 16, input + 16);
182
+
183
+    mod_c(idct, input, output);
184
+}
185
+
186
+static void mod64_a(const struct idct_context * restrict idct,
187
+                    const double * restrict input, double * restrict output)
188
+{
189
+    for (int i = 0; i < 16; i++)
190
+        output[i] = idct->mod64_a[i] * (input[i] + input[16 + i]);
191
+
192
+    for (int i = 16, k = 15; i < 32; i++, k--)
193
+        output[i] = idct->mod64_a[i] * (input[k] - input[16 + k]);
194
+}
195
+
196
+static void mod64_b(const struct idct_context * restrict idct,
197
+                    double * restrict input, double * restrict output)
198
+{
199
+    for (int i = 0; i < 16; i++)
200
+        input[16 + i] = idct->mod64_b[i] * input[16 + i];
201
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/interpolator.cpp -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/interpolator.cpp Changed
34
 
1
@@ -19,30 +19,13 @@
2
 #include "common.h"
3
 #include "interpolator.h"
4
 
5
-struct interpolator_data *interpolator_init(struct core_decoder *parent)
6
-{
7
-    struct interpolator_data *data = ta_new(parent, struct interpolator_data);
8
-    if (!data)
9
-        return NULL;
10
-
11
-    for (int i = 0, k = 0; i < 32; i++)
12
-        for (int j = 0; j < 32; j++)
13
-            data->cos_mod_32[k++] = 0.250 * cos((2 * i + 1) * (2 * j + 1) * M_PI / 128);
14
-
15
-    for (int i = 0, k = 0; i < 64; i++)
16
-        for (int j = 0; j < 64; j++)
17
-            data->cos_mod_64[k++] = 0.125 * cos((2 * i + 1) * (2 * j + 1) * M_PI / 256);
18
-
19
-    return data;
20
-}
21
-
22
-struct interpolator *interpolator_create(struct interpolator_data *parent, int flags)
23
+struct interpolator *interpolator_create(struct idct_context *parent, int flags)
24
 {
25
     struct interpolator *dsp = ta_new(parent, struct interpolator);
26
     if (!dsp)
27
         return NULL;
28
 
29
-    dsp->data = parent;
30
+    dsp->idct = parent;
31
     dsp->history = ta_znew_array_size(dsp,
32
         (flags & DCADEC_FLAG_CORE_BIT_EXACT) ? sizeof(int) : sizeof(double),
33
         (flags & DCADEC_FLAG_CORE_SYNTH_X96) ? 1024 : 512);
34
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/interpolator.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/interpolator.h Changed
32
 
1
@@ -22,7 +22,7 @@
2
 #define MAX_LFE_HISTORY     12
3
 
4
 struct interpolator;
5
-struct core_decoder;
6
+struct idct_context;
7
 
8
 typedef void (*interpolate_lfe_t)(int *pcm_samples, int *lfe_samples,
9
                                   int nsamples, bool dec_select,
10
@@ -33,19 +33,13 @@
11
                                   int **subband_samples_hi,
12
                                   int nsamples, bool perfect);
13
 
14
-struct interpolator_data {
15
-    double cos_mod_32[32 * 32];
16
-    double cos_mod_64[64 * 64];
17
-};
18
-
19
 struct interpolator {
20
-    struct interpolator_data *data;
21
+    struct idct_context *idct;
22
     void *history;
23
     interpolate_sub_t interpolate;
24
 };
25
 
26
-struct interpolator_data *interpolator_init(struct core_decoder *parent);
27
-struct interpolator *interpolator_create(struct interpolator_data *parent, int flags);
28
+struct interpolator *interpolator_create(struct idct_context *parent, int flags);
29
 void interpolator_clear(struct interpolator *dsp);
30
 
31
 #define INTERPOLATE_LFE(x) \
32
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/interpolator_fixed.cpp -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/interpolator_fixed.cpp Changed
29
 
1
@@ -18,8 +18,8 @@
2
 
3
 #include "common.h"
4
 #include "interpolator.h"
5
+#include "idct.h"
6
 #include "fixed_math.h"
7
-#include "idct_fixed.h"
8
 #include "fir_fixed.h"
9
 
10
 #define DCA_LOGCTX (0)
11
@@ -74,7 +74,7 @@
12
 
13
         // Inverse DCT
14
         int output[32];
15
-        inverse_dct32_fixed(input, output);
16
+        idct_perform32_fixed(input, output);
17
 
18
         // Store history
19
         for (i = 0, k = 31; i < 16; i++, k--) {
20
@@ -148,7 +148,7 @@
21
 
22
         // Inverse DCT
23
         int output[64];
24
-        inverse_dct64_fixed(input, output);
25
+        idct_perform64_fixed(input, output);
26
 
27
         // Store history
28
         for (i = 0, k = 63; i < 32; i++, k--) {
29
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/interpolator_float.cpp -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/interpolator_float.cpp Changed
71
 
1
@@ -18,6 +18,8 @@
2
 
3
 #include "common.h"
4
 #include "interpolator.h"
5
+#include "idct.h"
6
+#include "fixed_math.h"
7
 #include "fir_float.h"
8
 
9
 #define DCA_LOGCTX (0)
10
@@ -33,11 +35,7 @@
11
 
12
 static inline int convert(double a)
13
 {
14
-    if (a > 0x7fffff)
15
-        return 0x7fffff;
16
-    if (a < -0x800000)
17
-        return -0x800000;
18
-    return (int)floor(a + 0.5);
19
+    return clip23(lrint(a));
20
 }
21
 
22
 INTERPOLATE_LFE(lfe_float_fir)
23
@@ -116,9 +114,6 @@
24
     // Get history pointer
25
     double *history = (double*)dsp->history;
26
 
27
-    // Get IDCT coefficients
28
-    const double *cos_mod = dsp->data->cos_mod_32;
29
-
30
     // Select filter
31
     const double *filter_coeff = perfect ? band_fir_perfect : band_fir_nonperfect;
32
 
33
@@ -133,12 +128,7 @@
34
 
35
         // Inverse DCT
36
         double output[32];
37
-        for (i = 0, k = 0; i < 32; i++) {
38
-            double res = 0.0;
39
-            for (j = 0; j < 32; j++)
40
-                res += input[j] * cos_mod[k++];
41
-            output[i] = res;
42
-        }
43
+        idct_perform32_float(dsp->idct, input, output);
44
 
45
         // Store history
46
         for (i = 0, k = 31; i < 16; i++, k--) {
47
@@ -188,9 +178,6 @@
48
     // Get history pointer
49
     double *history = (double*)dsp->history;
50
 
51
-    // Get IDCT coefficients
52
-    const double *cos_mod = dsp->data->cos_mod_64;
53
-
54
     // Interpolation begins
55
     for (int sample = 0; sample < nsamples; sample++) {
56
         int i, j, k;
57
@@ -213,12 +200,7 @@
58
 
59
         // Inverse DCT
60
         double output[64];
61
-        for (i = 0, k = 0; i < 64; i++) {
62
-            double res = 0.0;
63
-            for (j = 0; j < 64; j++)
64
-                res += input[j] * cos_mod[k++];
65
-            output[i] = res;
66
-        }
67
+        idct_perform64_float(dsp->idct, input, output);
68
 
69
         // Store history
70
         for (i = 0, k = 63; i < 32; i++, k--) {
71
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/ta.cpp -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/ta.cpp Changed
28
 
1
@@ -15,6 +15,7 @@
2
 #include <string.h>
3
 #include <stdio.h>
4
 
5
+#include "compiler.h"
6
 #include "ta.h"
7
 
8
 
9
@@ -321,3 +322,18 @@
10
     }
11
     return NULL;
12
 }
13
+
14
+/* Return a copy of str.
15
+ * Returns NULL on OOM.
16
+ */
17
+char *ta_strdup(void *ta_parent, const char *str)
18
+{
19
+    if (str) {
20
+        size_t len = strlen(str) + 1;
21
+        char *dup = (char*)ta_alloc_size(ta_parent, len);
22
+        if (dup)
23
+            memcpy(dup, str, len);
24
+        return dup;
25
+    }
26
+    return NULL;
27
+}
28
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/ta.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/ta.h Changed
67
 
1
@@ -30,6 +30,7 @@
2
 bool ta_set_destructor(void *ptr, void (*destructor)(void *));
3
 bool ta_set_parent(void *ptr, void *ta_parent);
4
 void *ta_find_parent(void *ptr);
5
+char *ta_strdup(void *ta_parent, const char *str);
6
 
7
 static inline size_t ta_calc_array_size(size_t element_size, size_t count)
8
 {
9
@@ -38,6 +39,40 @@
10
     return element_size * count;
11
 }
12
 
13
+static inline int ta_zalloc_fast(void *ta_parent, void *ptr,
14
+                                 size_t count, size_t element_size)
15
+{
16
+    void **_ptr = (void **)ptr;
17
+    size_t old_size = ta_get_size(*_ptr);
18
+    size_t new_size = ta_calc_array_size(element_size, count);
19
+
20
+    if (old_size < new_size) {
21
+        ta_free(*_ptr);
22
+        if (!(*_ptr = ta_zalloc_size(ta_parent, new_size)))
23
+            return -1;
24
+        return 1;
25
+    }
26
+
27
+    return 0;
28
+}
29
+
30
+static inline int ta_alloc_fast(void *ta_parent, void *ptr,
31
+                                size_t count, size_t element_size)
32
+{
33
+    void **_ptr = (void **)ptr;
34
+    size_t old_size = ta_get_size(*_ptr);
35
+    size_t new_size = ta_calc_array_size(element_size, count);
36
+
37
+    if (old_size < new_size) {
38
+        ta_free(*_ptr);
39
+        if (!(*_ptr = ta_alloc_size(ta_parent, new_size)))
40
+            return -1;
41
+        return 1;
42
+    }
43
+
44
+    return 0;
45
+}
46
+
47
 #define ta_new(ta_parent, type)  (type *)ta_alloc_size(ta_parent, sizeof(type))
48
 #define ta_znew(ta_parent, type) (type *)ta_zalloc_size(ta_parent, sizeof(type))
49
 
50
@@ -56,16 +91,4 @@
51
 #define ta_realloc(ta_parent, ptr, type, count) \
52
     (type *)ta_realloc_size(ta_parent, ptr, ta_calc_array_size(sizeof(type), count))
53
 
54
-#define ta_new_ptrtype(ta_parent, ptr) \
55
-    (__typeof__(ptr))ta_alloc_size(ta_parent, sizeof(*ptr))
56
-
57
-#define ta_znew_ptrtype(ta_parent, ptr) \
58
-    (__typeof__(ptr))ta_zalloc_size(ta_parent, sizeof(*ptr))
59
-
60
-#define ta_new_array_ptrtype(ta_parent, ptr, count) \
61
-    (__typeof__(ptr))ta_new_array_size(ta_parent, sizeof(*(ptr)), count)
62
-
63
-#define ta_znew_array_ptrtype(ta_parent, ptr, count) \
64
-    (__typeof__(ptr))ta_znew_array_size(ta_parent, sizeof(*(ptr)), count)
65
-
66
 #endif
67
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/xll_decoder.cpp -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/xll_decoder.cpp Changed
201
 
1
@@ -21,6 +21,7 @@
2
 #include "fixed_math.h"
3
 #include "xll_decoder.h"
4
 #include "exss_parser.h"
5
+#include "dmix_tables.h"
6
 
7
 #include "xll_tables.h"
8
 
9
@@ -34,23 +35,65 @@
10
     int m, n;
11
 
12
     if (chs->primary_chset) {
13
-        m = prim_dmix_nch[chs->dmix_type];
14
+        m = dmix_primary_nch[chs->dmix_type];
15
         n = chs->nchannels;
16
     } else {
17
-        m = xll->nchannels;
18
-        n = chs->nchannels + 1;
19
+        m = chs->dmix_m;
20
+        n = chs->nchannels + 2; // Two extra columns for scales
21
     }
22
 
23
     // Reallocate downmix coefficients matrix
24
-    int ret;
25
-    if ((ret = dca_realloc(xll->chset, &chs->dmix_coeff, m * n, sizeof(int))) < 0)
26
-        return ret;
27
+    if (ta_zalloc_fast(xll->chset, &chs->dmix_coeff, m * n, sizeof(int)) < 0)
28
+        return -DCADEC_ENOMEM;
29
+
30
+    if (chs->primary_chset) {
31
+        chs->dmix_scale = NULL;
32
+        chs->dmix_scale_inv = NULL;
33
+    } else {
34
+        chs->dmix_scale = chs->dmix_coeff + m * chs->nchannels;
35
+        chs->dmix_scale_inv = chs->dmix_coeff + m * (chs->nchannels + 1);
36
+    }
37
 
38
-    // Parse downmix coefficients
39
     int *coeff_ptr = chs->dmix_coeff;
40
-    for (int i = 0; i < m; i++)
41
-        for (int j = 0; j < n; j++)
42
-            *coeff_ptr++ = bits_get(&xll->bits, 9);
43
+    for (int i = 0; i < m; i++) {
44
+        int scale_inv = 0;
45
+
46
+        // Downmix scale
47
+        // Only for non-primary channel sets
48
+        if (!chs->primary_chset) {
49
+            int code = bits_get(&xll->bits, 9);
50
+            int sign = (code >> 8) - 1; code &= 0xff;
51
+            if (code > 0) {
52
+                unsigned int index = code - 1;
53
+                enforce(index >= 40 && index < dca_countof(dmix_table), "Invalid downmix scale index");
54
+                int scale = dmix_table[index];
55
+                scale_inv = dmix_table_inv[index - 40];
56
+                chs->dmix_scale[i] = (scale ^ sign) - sign;
57
+                chs->dmix_scale_inv[i] = (scale_inv ^ sign) - sign;
58
+            } else {
59
+                chs->dmix_scale[i] = 0;
60
+                chs->dmix_scale_inv[i] = 0;
61
+            }
62
+        }
63
+
64
+        // Downmix coefficients
65
+        for (int j = 0; j < chs->nchannels; j++) {
66
+            int code = bits_get(&xll->bits, 9);
67
+            int sign = (code >> 8) - 1; code &= 0xff;
68
+            if (code > 0) {
69
+                unsigned int index = code - 1;
70
+                enforce(index < dca_countof(dmix_table), "Invalid downmix coefficient index");
71
+                int coeff = dmix_table[index];
72
+                if (!chs->primary_chset)
73
+                    // Multiply by |InvDmixScale| to get |UndoDmixScale|
74
+                    coeff = mul16(scale_inv, coeff);
75
+                // Convert sign
76
+                *coeff_ptr++ = (coeff ^ sign) - sign;
77
+            } else {
78
+                *coeff_ptr++ = 0;
79
+            }
80
+        }
81
+    }
82
 
83
     return 0;
84
 }
85
@@ -70,6 +113,7 @@
86
 
87
     // Number of channels in the channel set
88
     chs->nchannels = bits_get(&xll->bits, 4) + 1;
89
+    require(chs->nchannels <= XLL_MAX_CHANNELS, "Too many channels");
90
 
91
     // Residual type
92
     chs->residual_encode = bits_get(&xll->bits, chs->nchannels);
93
@@ -82,12 +126,14 @@
94
 
95
     // Original sampling frequency
96
     chs->freq = exss_sample_rates[bits_get(&xll->bits, 4)];
97
+    require(chs->freq <= 192000, "Too high sampling frequency");
98
 
99
     // Sampling frequency modifier
100
-    bits_skip(&xll->bits, 2);
101
+    chs->interpolate = bits_get(&xll->bits, 2);
102
 
103
     // Which replacement set this channel set is member of
104
     chs->replace_set_index = bits_get(&xll->bits, 2);
105
+    require(chs->replace_set_index == 0, "Replacement sets are not supported");
106
 
107
     // Default replacement set flag
108
     if (chs->replace_set_index)
109
@@ -104,11 +150,10 @@
110
         chs->dmix_embedded = chs->dmix_coeffs_present && bits_get1(&xll->bits);
111
 
112
         // Downmix type
113
-        // 0 - 1/0, 1 - Lo/Ro, 2 - Lt/Rt, 3 - 3/0,
114
-        // 4 - 2/1, 5 - 2/2, 6 - 3/1
115
         if (chs->dmix_coeffs_present && chs->primary_chset) {
116
             chs->dmix_type = bits_get(&xll->bits, 3);
117
-            enforce(chs->dmix_type < 7, "Invalid primary channel set downmix type");
118
+            enforce(chs->dmix_type < DMIX_TYPE_COUNT,
119
+                    "Invalid primary channel set downmix type");
120
         }
121
 
122
         // Whether the channel set is part of a hierarchy
123
@@ -123,6 +168,7 @@
124
         if (chs->ch_mask_enabled) {
125
             // Channel mask for set
126
             chs->ch_mask = bits_get(&xll->bits, xll->ch_mask_nbits);
127
+            enforce(dca_popcount(chs->ch_mask) == chs->nchannels, "Invalid channel mask");
128
         } else {
129
             chs->ch_mask = 0;
130
             // Angular speaker position table
131
@@ -136,7 +182,7 @@
132
         chs->primary_chset = true;
133
         chs->dmix_coeffs_present = false;
134
         chs->dmix_embedded = false;
135
-        chs->hier_chset = false;
136
+        chs->hier_chset = true;
137
         chs->ch_mask_enabled = false;
138
         chs->ch_mask = 0;
139
 
140
@@ -183,114 +229,171 @@
141
     else
142
         chs->nfreqbands = 1;
143
 
144
+    // Extra frequency bands are not supported
145
+    require(chs->nfreqbands <= XLL_MAX_BANDS, "Too many frequency bands");
146
+
147
+    // Clamp the sampling frequency to 96 kHz. The rest of the code will use
148
+    // the number of bands to determine maximum frequency.
149
+    if (chs->freq > 96000)
150
+        chs->freq = 96000;
151
+
152
     if (chs->storage_bit_res > 16)
153
         chs->nabits = 5;
154
     else if (chs->storage_bit_res > 8)
155
         chs->nabits = 4;
156
     else
157
         chs->nabits = 3;
158
-    if (xll->nchsets > 1 && chs->nabits < 5)
159
+    if ((xll->nchsets > 1 || chs->nfreqbands > 1) && chs->nabits < 5)
160
         chs->nabits++;
161
 
162
-    // Pairwise channel decorrelation for frequency band 0
163
-    chs->decor_enabled = bits_get1(&xll->bits);
164
-    if (chs->decor_enabled && chs->nchannels > 1) {
165
-        // Original channel order
166
-        for (i = 0; i < chs->nchannels; i++)
167
-            chs->orig_order[i] = bits_get(&xll->bits, ch_nbits[chs->nchannels - 1]);
168
-        // Pairwise channel coefficients
169
-        for (i = 0; i < chs->nchannels / 2; i++) {
170
-            if (bits_get1(&xll->bits))
171
-                chs->decor_coef[i] = bits_get_signed_linear(&xll->bits, 7);
172
-            else
173
-                chs->decor_coef[i] = 0;
174
+    for (int band = 0; band < chs->nfreqbands; band++) {
175
+        // Pairwise channel decorrelation
176
+        chs->decor_enabled[band] = bits_get1(&xll->bits);
177
+        if (chs->decor_enabled[band] && chs->nchannels > 1) {
178
+            // Original channel order
179
+            for (i = 0; i < chs->nchannels; i++) {
180
+                chs->orig_order[band][i] = bits_get(&xll->bits, ch_nbits[chs->nchannels - 1]);
181
+                enforce(chs->orig_order[band][i] < chs->nchannels, "Invalid original channel order");
182
+            }
183
+            // Pairwise channel coefficients
184
+            for (i = 0; i < chs->nchannels / 2; i++) {
185
+                if (bits_get1(&xll->bits))
186
+                    chs->decor_coeff[band][i] = bits_get_signed_linear(&xll->bits, 7);
187
+                else
188
+                    chs->decor_coeff[band][i] = 0;
189
+            }
190
+        } else {
191
+            for (i = 0; i < chs->nchannels; i++)
192
+                chs->orig_order[band][i] = i;
193
+            for (i = 0; i < chs->nchannels / 2; i++)
194
+                chs->decor_coeff[band][i] = 0;
195
         }
196
-    } else {
197
-        for (i = 0; i < chs->nchannels; i++)
198
-            chs->orig_order[i] = i;
199
-        for (i = 0; i < chs->nchannels / 2; i++)
200
-            chs->decor_coef[i] = 0;
201
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/xll_decoder.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/xll_decoder.h Changed
130
 
1
@@ -21,12 +21,23 @@
2
 
3
 #include "bitstream.h"
4
 
5
-#define XLL_MAX_CHANNELS    16
6
+#define XLL_MAX_CHSETS      16
7
+#define XLL_MAX_CHANNELS    8
8
+#define XLL_MAX_BANDS       2
9
+
10
+#define XLL_DECI_HISTORY    8
11
+
12
+#define XLL_BAND_0  0
13
+#define XLL_BAND_1  1
14
 
15
 #define for_each_chset(xll, chs) \
16
     for (struct xll_chset *(chs) = (xll)->chset; \
17
          (chs) != &(xll)->chset[(xll)->nchsets]; (chs)++)
18
 
19
+#define for_each_active_chset(xll, chs) \
20
+    for (struct xll_chset *(chs) = (xll)->chset; \
21
+         (chs) != &(xll)->chset[(xll)->nactivechsets]; (chs)++)
22
+
23
 struct xll_decoder;
24
 struct exss_asset;
25
 
26
@@ -38,6 +49,7 @@
27
     int     pcm_bit_res;
28
     int     storage_bit_res;
29
     int     freq;
30
+    int     interpolate;
31
     int     replace_set_index;
32
 
33
     bool    primary_chset;
34
@@ -45,25 +57,30 @@
35
     bool    dmix_embedded;
36
     int     dmix_type;
37
     bool    hier_chset;
38
+    int     dmix_m;
39
     int     *dmix_coeff;
40
+    int     *dmix_scale;
41
+    int     *dmix_scale_inv;
42
     bool    ch_mask_enabled;
43
     int     ch_mask;
44
 
45
     int     nfreqbands;
46
     int     nabits;
47
 
48
-    bool    decor_enabled;
49
-    int     orig_order[XLL_MAX_CHANNELS];
50
-    int     decor_coef[XLL_MAX_CHANNELS / 2];
51
+    bool    decor_enabled[XLL_MAX_BANDS];
52
+    int     orig_order[XLL_MAX_BANDS][XLL_MAX_CHANNELS];
53
+    int     decor_coeff[XLL_MAX_BANDS][XLL_MAX_CHANNELS / 2];
54
+
55
+    int     adapt_pred_order[XLL_MAX_BANDS][XLL_MAX_CHANNELS];
56
+    int     highest_pred_order[XLL_MAX_BANDS];
57
+    int     fixed_pred_order[XLL_MAX_BANDS][XLL_MAX_CHANNELS];
58
+    int     adapt_refl_coeff[XLL_MAX_BANDS][XLL_MAX_CHANNELS][16];
59
 
60
-    int     adapt_pred_order[XLL_MAX_CHANNELS];
61
-    int     highest_pred_order;
62
-    int     fixed_pred_order[XLL_MAX_CHANNELS];
63
-    int     adapt_refl_coef[XLL_MAX_CHANNELS][16];
64
+    bool    band_dmix_embedded[XLL_MAX_BANDS];
65
 
66
-    size_t  lsb_section_size;
67
-    int     nscalablelsbs[XLL_MAX_CHANNELS];
68
-    int     bit_width_adjust[XLL_MAX_CHANNELS];
69
+    size_t  lsb_section_size[XLL_MAX_BANDS];
70
+    int     nscalablelsbs[XLL_MAX_BANDS][XLL_MAX_CHANNELS];
71
+    int     bit_width_adjust[XLL_MAX_BANDS][XLL_MAX_CHANNELS];
72
 
73
     bool    seg_type;
74
     bool    rice_code_flag[XLL_MAX_CHANNELS];
75
@@ -71,9 +88,16 @@
76
     int     bitalloc_part_a[XLL_MAX_CHANNELS];
77
     int     bitalloc_part_b[XLL_MAX_CHANNELS];
78
     int     nsamples_part_a[XLL_MAX_CHANNELS];
79
-    int     *msb_sample_buffer[XLL_MAX_CHANNELS];
80
-    int     *lsb_sample_buffer[XLL_MAX_CHANNELS];
81
-    int     *sample_buffer;
82
+
83
+    int     deci_history[XLL_MAX_CHANNELS][XLL_DECI_HISTORY];
84
+
85
+    int     *msb_sample_buffer[XLL_MAX_BANDS][XLL_MAX_CHANNELS];
86
+    int     *lsb_sample_buffer[XLL_MAX_BANDS][XLL_MAX_CHANNELS];
87
+    int     *out_sample_buffer[XLL_MAX_CHANNELS];
88
+
89
+    int     *sample_buffer1;
90
+    int     *sample_buffer2;
91
+    int     *sample_buffer3;
92
 };
93
 
94
 struct xll_decoder {
95
@@ -81,6 +105,8 @@
96
 
97
     struct dcadec_log_context *logctx;
98
 
99
+    int     flags;
100
+
101
     size_t  frame_size;
102
     int     nchsets;
103
     int     nframesegs;
104
@@ -99,6 +125,9 @@
105
 
106
     int     nfreqbands;
107
     int     nchannels;
108
+    int     nactivechsets;
109
+
110
+    int     nfailedsegs;
111
 
112
     int     hd_stream_id;
113
 
114
@@ -107,10 +136,11 @@
115
     int         pbr_delay;
116
 };
117
 
118
-void xll_clear_band_data(struct xll_chset *chs);
119
-void xll_filter_band_data(struct xll_chset *chs);
120
-int xll_get_lsb_width(struct xll_chset *chs, int ch);
121
-void xll_assemble_msbs_lsbs(struct xll_chset *chs);
122
+void xll_clear_band_data(struct xll_chset *chs, int band);
123
+void xll_filter_band_data(struct xll_chset *chs, int band);
124
+int xll_get_lsb_width(struct xll_chset *chs, int band, int ch);
125
+void xll_assemble_msbs_lsbs(struct xll_chset *chs, int band);
126
+int xll_assemble_freq_bands(struct xll_chset *chs);
127
 int xll_map_ch_to_spkr(struct xll_chset *chs, int ch);
128
 int xll_parse(struct xll_decoder *xll, uint8_t *data, size_t size, struct exss_asset *asset, struct dcadec_log_context *logctx);
129
 void xll_clear(struct xll_decoder *xll);
130
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/xll_tables.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/dcadec/xll_tables.h Changed
29
 
1
@@ -17,7 +17,7 @@
2
  */
3
 
4
 // Section 8.4.3: Look-up table of quantized reflection coefficients
5
-static const uint16_t refl_coef_table[128] = {
6
+static const uint16_t refl_coeff_table[128] = {
7
         0,  3070,  5110,  7140,  9156, 11154, 13132, 15085,
8
     17010, 18904, 20764, 22588, 24373, 26117, 27818, 29474,
9
     31085, 32648, 34164, 35631, 37049, 38418, 39738, 41008,
10
@@ -40,6 +40,16 @@
11
     0, 1, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4
12
 };
13
 
14
-static const uint8_t prim_dmix_nch[7] = {
15
-    1, 2, 2, 3, 3, 4, 4
16
+static const int32_t band_coeff_table0[] = {
17
+    868669, -5931642, -1228483
18
+};
19
+
20
+static const int32_t band_coeff_table1[] = {
21
+      -20577,  122631,  -393647,  904476,
22
+    -1696305, 2825313, -4430736, 6791313
23
+};
24
+
25
+static const int32_t band_coeff_table2[] = {
26
+      41153,  -245210,  785564, -1788164,
27
+    3259333, -5074941, 6928550, -8204883
28
 };
29
makemkv-oss-1.9.5.tar.xz/libffabi/src/ffabi.c -> makemkv-oss-1.10.2.tar.xz/libffabi/src/ffabi.c Changed
19
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
@@ -685,7 +685,7 @@
11
         &bits_per_sample,
12
         &profile);
13
 
14
-    if (info && !err)
15
+    if (info && (err>=0))
16
     {
17
         info->frame_size = nsamples;
18
         info->channel_layout = channel_mask;
19
makemkv-oss-1.9.5.tar.xz/libffabi/src/ffabicfg.h.in -> makemkv-oss-1.10.2.tar.xz/libffabi/src/ffabicfg.h.in Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libffabi/src/internal.h -> makemkv-oss-1.10.2.tar.xz/libffabi/src/internal.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmakemkv/inc/lgpl/cassert -> makemkv-oss-1.10.2.tar.xz/libmakemkv/inc/lgpl/cassert Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmakemkv/inc/lgpl/smem.h -> makemkv-oss-1.10.2.tar.xz/libmakemkv/inc/lgpl/smem.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmakemkv/inc/lgpl/stdstring.h -> makemkv-oss-1.10.2.tar.xz/libmakemkv/inc/lgpl/stdstring.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmakemkv/inc/lgpl/world.h -> makemkv-oss-1.10.2.tar.xz/libmakemkv/inc/lgpl/world.h Changed
19
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
@@ -52,7 +52,7 @@
11
     virtual void  __cdecl iso6392T(char* lang)=0;
12
 };
13
 
14
-#define WORLD_VER 21 // increment on changes
15
+#define WORLD_VER 23 // increment on changes
16
 #define WORLD_NAME ( (WORLD_VER<<8) | sizeof(IWorld) | 1 )
17
 
18
 #ifdef LGPL_WORLD_LOCAL
19
makemkv-oss-1.9.5.tar.xz/libmakemkv/inc/libmkv/ebmlwrite.h -> makemkv-oss-1.10.2.tar.xz/libmakemkv/inc/libmkv/ebmlwrite.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmakemkv/inc/libmkv/internal.h -> makemkv-oss-1.10.2.tar.xz/libmakemkv/inc/libmkv/internal.h Changed
54
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
@@ -50,10 +50,43 @@
11
 #include "matroska/KaxAttachments.h"
12
 #include "matroska/KaxAttached.h"
13
 
14
+#include <time.h>
15
+
16
 using namespace LIBEBML_NAMESPACE;
17
 using namespace LIBMATROSKA_NAMESPACE;
18
 
19
 UTFstring GetLibraryVersionString();
20
 
21
+#ifdef _MSC_VER
22
+
23
+static inline uint64_t libmkv_time()
24
+{
25
+    return _time64(NULL);
26
+};
27
+
28
+static inline struct tm *libmkv_gmtime_r(uint64_t atime, struct tm *result)
29
+{
30
+    __time64_t t = atime;
31
+    struct tm *p = _gmtime64(&t);
32
+    if (!p) return NULL;
33
+    memcpy(result,p,sizeof(struct tm));
34
+    return result;
35
+}
36
+
37
+#else
38
+
39
+static inline uint64_t libmkv_time()
40
+{
41
+    return time(NULL);
42
+};
43
+
44
+static inline struct tm *libmkv_gmtime_r(uint64_t atime, struct tm *result)
45
+{
46
+    time_t t = atime;
47
+    return gmtime_r(&t,result);
48
+}
49
+
50
+#endif
51
+
52
 #endif // LIBMKV_INTERNAL_H_INCLUDED
53
 
54
makemkv-oss-1.9.5.tar.xz/libmakemkv/inc/libmkv/libmkv.h -> makemkv-oss-1.10.2.tar.xz/libmakemkv/inc/libmkv/libmkv.h Changed
40
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
@@ -51,6 +51,7 @@
11
     virtual void*           get_ref()=0;
12
     virtual bool            compress_start(unsigned int compressionType,unsigned int compressionLevel)=0;
13
     virtual bool            compress_wait()=0;
14
+    virtual unsigned int    compress_srcsize()=0;
15
 public:
16
     int64_t     timecode;
17
     int64_t     duration;
18
@@ -121,6 +122,8 @@
19
             int     fps_d;
20
 
21
             uint64_t priv[2];
22
+
23
+            uint8_t stereo_mode;
24
         } video;
25
 
26
         struct _audio
27
@@ -133,9 +136,12 @@
28
 
29
         struct _subtitles
30
         {
31
+            uint8_t offset_sequence_id_ref;
32
         } subtitles;
33
     } u;
34
 
35
+    uint8_t source_id[8];
36
+
37
 } MkvTrackInfo;
38
 
39
 class IMkvFrameSource
40
makemkv-oss-1.9.5.tar.xz/libmakemkv/src/ebmlwrite.cpp -> makemkv-oss-1.10.2.tar.xz/libmakemkv/src/ebmlwrite.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmakemkv/src/libmkv.cpp -> makemkv-oss-1.10.2.tar.xz/libmakemkv/src/libmkv.cpp Changed
201
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
@@ -23,10 +23,15 @@
11
 #include <libmkv/ebmlwrite.h>
12
 #include <lgpl/cassert>
13
 #include <exception>
14
-#include <list>
15
 #include <lgpl/sstring.h>
16
-#include <time.h>
17
 #include <lgpl/world.h>
18
+#include <vector>
19
+#include <lgpl/apdefs.h>
20
+
21
+#ifndef __STDC_FORMAT_MACROS
22
+#define __STDC_FORMAT_MACROS 1
23
+#endif
24
+#include <inttypes.h>
25
 
26
 #define TIMECODE_SCALE              1000000
27
 #define MAX_TIMECODE_SIZE_BYTES     6
28
@@ -314,10 +319,125 @@
29
     uint64_t        duration_time;
30
     uint64_t        refs[2];
31
     unsigned int    duration_size;
32
-    unsigned int    frame_count;
33
     unsigned int    compression_type;
34
     unsigned int    compression_level;
35
     EbmlBinary*     codec_private;
36
+    uint64_t        stat_frames;
37
+    uint64_t        stat_bytes;
38
+    uint64_t        stat_bytes_out;
39
+    int64_t         stat_time_start;
40
+    int64_t         stat_time_end;
41
+public:
42
+    void UpdateStat(IMkvChunk*  frame)
43
+    {
44
+        int64_t time_end = frame->timecode + frame->duration;
45
+        if (stat_frames)
46
+        {
47
+            if (frame->timecode<stat_time_start) {
48
+                stat_time_start = frame->timecode;
49
+            }
50
+            if (time_end>stat_time_end) {
51
+                stat_time_end = time_end;
52
+            }
53
+        } else {
54
+            stat_time_start = frame->timecode;
55
+            stat_time_end = time_end;
56
+        }
57
+        stat_frames++;
58
+        CNZ(frame->compress_wait());
59
+        stat_bytes += frame->compress_srcsize();
60
+        stat_bytes_out += frame->get_size();
61
+    }
62
+    void RenderStat(KaxTags &tags,unsigned int trackUID,uint64_t mtime,const char* WritingApp)
63
+    {
64
+        KaxTag &tag = AddNewChild<KaxTag>(tags);
65
+        KaxTagTargets &targets = GetChild<KaxTagTargets>(tag);
66
+        GetChild<EbmlUInteger,KaxTagTrackUID>(targets) = trackUID;
67
+        GetChild<EbmlUInteger,KaxTagTargetTypeValue>(targets) = 50;
68
+        GetChild<EbmlString,KaxTagTargetType>(targets) = "MOVIE";
69
+
70
+        static const char* names[6]={
71
+            "BPS","DURATION","NUMBER_OF_FRAMES",
72
+            "NUMBER_OF_BYTES","NUMBER_OF_BYTES_UNCOMPRESSED","SOURCE_ID"};
73
+
74
+        char buffer[256];
75
+        uint64_t values[4];
76
+        uint8_t have = 0;
77
+
78
+        values[1] = TimecodeFromClock(stat_time_end-stat_time_start);
79
+        values[0] = (values[1]!=0)?(stat_bytes*8000/(values[1]/1000000)):0;
80
+        values[2] = stat_frames;
81
+        values[3] = stat_bytes_out;
82
+
83
+        for (unsigned int i=0;i<4;i++)
84
+        {
85
+            if (i==1)
86
+            {
87
+                unsigned int dec,sec,min,hr;
88
+                uint64_t t = values[1];
89
+                dec = (unsigned int)(t % 1000000000); t /= 1000000000;
90
+                sec = (unsigned int)(t % 60); t /= 60;
91
+                min = (unsigned int)(t % 60); t /= 60;
92
+                hr = (unsigned int) t;
93
+                sprintf_s(buffer,sizeof(buffer),"%02u:%02u:%02u.%09u",hr,min,sec,dec);
94
+            } else {
95
+                sprintf_s(buffer,sizeof(buffer),"%" PRIu64,values[i]);
96
+            }
97
+            AddSimple(tag,names[i],buffer);
98
+        }
99
+
100
+        if (stat_bytes_out!=stat_bytes)
101
+        {
102
+            have |= 1;
103
+            sprintf_s(buffer,sizeof(buffer),"%" PRIu64,stat_bytes);
104
+            AddSimple(tag,names[4],buffer);
105
+        }
106
+
107
+        if (info.source_id[0]!=0)
108
+        {
109
+            have |= 2;
110
+            for (unsigned int i=0;i<info.source_id[0];i++)
111
+            {
112
+                sprintf(buffer+i*2,"%02X",info.source_id[i+1]);
113
+            }
114
+            AddSimple(tag,names[5],buffer);
115
+        }
116
+
117
+        AddSimple(tag,"_STATISTICS_WRITING_APP",WritingApp);
118
+
119
+        struct tm t;
120
+        libmkv_gmtime_r(mtime,&t);
121
+        sprintf_s(buffer,sizeof(buffer),"%04u-%02u-%02u %02u:%02u:%02u",
122
+            t.tm_year+1900,t.tm_mon+1,t.tm_mday,
123
+            t.tm_hour,t.tm_min,t.tm_sec);
124
+        AddSimple(tag,"_STATISTICS_WRITING_DATE_UTC",buffer);
125
+
126
+        sprintf_s(buffer,sizeof(buffer),"%s %s %s %s",
127
+            names[0],names[1],names[2],names[3]);
128
+        for (unsigned int i=0;i<2;i++)
129
+        {
130
+            if ((have&(1<<i))!=0)
131
+            {
132
+                strcat(buffer," ");
133
+                strcat(buffer,names[i+4]);
134
+            }
135
+        }
136
+        AddSimple(tag,"_STATISTICS_TAGS",buffer);
137
+
138
+        if ((info.stream_flags&AP_AVStreamFlag_OffsetSequenceIdPresent)!=0)
139
+        {
140
+            sprintf_s(buffer,sizeof(buffer),"%u",(unsigned int)info.u.subtitles.offset_sequence_id_ref);
141
+            AddSimple(tag,"3d-plane",buffer);
142
+        }
143
+    }
144
+    static void AddSimple(KaxTag &tag,const char* Name,const char* Value)
145
+    {
146
+        KaxTagSimple& simple = AddNewChild<KaxTagSimple>(tag);
147
+        GetChild<EbmlUnicodeString,KaxTagName>(simple) = UTF8string(Name);
148
+        GetChild<EbmlString,KaxTagLangue>(simple) = "eng";
149
+        GetChild<EbmlUInteger,KaxTagDefault>(simple) = 1;
150
+        GetChild<EbmlUnicodeString,KaxTagString>(simple) = UTF8string(Value);
151
+    }
152
 };
153
 
154
 class MyDataBuffer : public DataBuffer
155
@@ -415,6 +535,7 @@
156
     KaxSeek* seek_cues = AddSeekEntry<KaxCues>(MetaSeek);
157
     KaxSeek* seek_chap = AddSeekEntry<KaxChapters>(MetaSeek);
158
     KaxSeek* seek_att = AddSeekEntry<KaxAttachments>(MetaSeek);
159
+    KaxSeek* seek_tags = AddSeekEntry<KaxTags>(MetaSeek);
160
 
161
     CNZ(MetaSeek.Render(File));
162
 
163
@@ -442,7 +563,8 @@
164
     {
165
         SegmentUid[i] = lgpl_get_random_byte();
166
     }
167
-    GetChild<EbmlDate,KaxDateUTC>(MyInfos).SetEpochDate((uint32_t)time(NULL));
168
+    uint64_t mtime = libmkv_time();
169
+    GetChild<EbmlDate,KaxDateUTC>(MyInfos).SetEpochDate(mtime);
170
     GetChild<EbmlBinary,KaxSegmentUID>(MyInfos).CopyBuffer(SegmentUid, 16);
171
 
172
     RenderVoid(File,FormatInfo->debug.evoid[0]);
173
@@ -464,10 +586,12 @@
174
         KaxTrackEntry *cur_track;
175
 
176
         ti = & track_info[i].info;
177
-        track_info[i].frame_count = 0;
178
         track_info[i].duration_pos=0;
179
         track_info[i].refs[0]=BAD_TIMECODE;
180
         track_info[i].refs[1]=BAD_TIMECODE;
181
+        track_info[i].stat_frames=0;
182
+        track_info[i].stat_bytes=0;
183
+        track_info[i].stat_bytes_out=0;
184
 
185
         memset(ti,0,sizeof(*ti));
186
         if (false==Input->MkvGetStream(i)->UpdateTrackInfo(ti))
187
@@ -567,6 +691,10 @@
188
 
189
             GetChild<EbmlUInteger,KaxVideoDisplayUnit>(vid_track) = 0;
190
 
191
+            if (ti->u.video.stereo_mode!=0)
192
+            {
193
+                GetChild<EbmlUInteger,KaxVideoStereoMode>(vid_track) = ti->u.video.stereo_mode;
194
+            }
195
 
196
             if (ti->u.video.fps_n!=0)
197
             {
198
@@ -956,7 +1084,7 @@
199
 
200
             DataBuffer* mkv_buffer = GetDataBuffer(frame,&track_info[stream_id]);
201
makemkv-oss-1.9.5.tar.xz/libmakemkv/src/stdstring.cpp -> makemkv-oss-1.10.2.tar.xz/libmakemkv/src/stdstring.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmakemkv/src/version.cpp -> makemkv-oss-1.10.2.tar.xz/libmakemkv/src/version.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmakemkv/src/world.cpp -> makemkv-oss-1.10.2.tar.xz/libmakemkv/src/world.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMakeMKV - MKV multiplexer library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmkv@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmkv@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/FileKax.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/FileKax.h Changed
193
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: FileKax.h,v 1.5 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: FileKax.h,v 1.5 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_FILE_H
28
 #define LIBMATROSKA_FILE_H
29
@@ -60,90 +60,90 @@
30
 */
31
 class MATROSKA_DLL_API FileMatroska {
32
     public:
33
-       FileMatroska(IOCallback & output);
34
-       ~FileMatroska();
35
+    FileMatroska(IOCallback & output);
36
+    ~FileMatroska();
37
 #ifdef OLD
38
-   filepos_t RenderHead(const std::string & aEncoderApp);
39
-   uint32 ReadHead();
40
-   uint32 ReadTracks();
41
-   uint32 ReadCodec();
42
-   void Close(const uint32 aTimeLength);
43
-
44
-   inline void type_SetInfo(const std::string & aStr) {myMainHeader.type_SetInfo(aStr);}
45
-   inline void type_SetAds(const std::string & aStr) {myMainHeader.type_SetAds(aStr);}
46
-   inline void type_SetSize(const std::string & aStr) {myMainHeader.type_SetSize(aStr);}
47
-   inline void type_SetSize(uint64 aSize) {myMainHeader.type_SetSize(aSize);}
48
-
49
-   inline uint8 GetTrackNumber() const { return myTracks.size(); }
50
-
51
-   void track_SetName(Track * aTrack, const std::string & aName);
52
-   void track_SetLaced(Track * aTrack, bool bLaced = true);
53
-
54
-   Track * CreateTrack(const track_type aType);
55
-   inline Track * GetTrack(const uint8 aTrackNb) const
56
-   {
57
-       if (aTrackNb > myTracks.size())
58
-       return NULL;
59
-       else
60
-       return myTracks[aTrackNb-1];
61
-   }
62
-
63
-   void Track_GetInfo(const Track * aTrack, TrackInfo & aTrackInfo) const;
64
-   
65
-   void Track_SetInfo_Audio(Track * aTrack, const TrackInfoAudio & aTrackInfo);
66
-   void Track_GetInfo_Audio(const Track * aTrack, TrackInfoAudio & aTrackInfo) const;
67
-
68
-   void Track_SetInfo_Video(Track * aTrack, const TrackInfoVideo & aTrackInfo);
69
-   void Track_GetInfo_Video(const Track * aTrack, TrackInfoVideo & aTrackInfo) const;
70
-
71
-   void SelectReadingTrack(Track * aTrack, bool select = true);
72
-
73
-   /*!
74
-       \return wether the frame has been added or not
75
-   */
76
-   bool AddFrame(Track * aTrack, const uint32 aTimecode, const binary *aFrame, const uint32 aFrameSize,
77
-            bool aKeyFrame = true, bool aBFrame = false);
78
-
79
-   /*!
80
-       \return wether the frame has been read or not
81
-   */
82
-   bool ReadFrame(Track * & aTrack, uint32 & aTimecode, const binary * & aFrame, uint32 & aFrameSize,
83
-            bool & aKeyFrame, bool & aBFrame);
84
-
85
-   /*
86
-       Render the pending cluster to file
87
-   */
88
-   void Flush();
89
-
90
-   void SetMaxClusterSize(const uint32 value);
91
-   void SetMinClusterSize(const uint32 value) {myMinClusterSize = value;}
92
+  filepos_t RenderHead(const std::string & aEncoderApp);
93
+  uint32 ReadHead();
94
+  uint32 ReadTracks();
95
+  uint32 ReadCodec();
96
+  void Close(const uint32 aTimeLength);
97
+
98
+  inline void type_SetInfo(const std::string & aStr) {myMainHeader.type_SetInfo(aStr);}
99
+  inline void type_SetAds(const std::string & aStr) {myMainHeader.type_SetAds(aStr);}
100
+  inline void type_SetSize(const std::string & aStr) {myMainHeader.type_SetSize(aStr);}
101
+  inline void type_SetSize(uint64 aSize) {myMainHeader.type_SetSize(aSize);}
102
+
103
+  inline uint8 GetTrackNumber() const { return myTracks.size(); }
104
+
105
+  void track_SetName(Track * aTrack, const std::string & aName);
106
+  void track_SetLaced(Track * aTrack, bool bLaced = true);
107
+
108
+  Track * CreateTrack(const track_type aType);
109
+  inline Track * GetTrack(const uint8 aTrackNb) const
110
+  {
111
+      if (aTrackNb > myTracks.size())
112
+    return NULL;
113
+      else
114
+    return myTracks[aTrackNb-1];
115
+  }
116
+
117
+  void Track_GetInfo(const Track * aTrack, TrackInfo & aTrackInfo) const;
118
+
119
+  void Track_SetInfo_Audio(Track * aTrack, const TrackInfoAudio & aTrackInfo);
120
+  void Track_GetInfo_Audio(const Track * aTrack, TrackInfoAudio & aTrackInfo) const;
121
+
122
+  void Track_SetInfo_Video(Track * aTrack, const TrackInfoVideo & aTrackInfo);
123
+  void Track_GetInfo_Video(const Track * aTrack, TrackInfoVideo & aTrackInfo) const;
124
+
125
+  void SelectReadingTrack(Track * aTrack, bool select = true);
126
+
127
+  /*!
128
+      \return wether the frame has been added or not
129
+  */
130
+  bool AddFrame(Track * aTrack, const uint32 aTimecode, const binary *aFrame, const uint32 aFrameSize,
131
+         bool aKeyFrame = true, bool aBFrame = false);
132
+
133
+  /*!
134
+      \return wether the frame has been read or not
135
+  */
136
+  bool ReadFrame(Track * & aTrack, uint32 & aTimecode, const binary * & aFrame, uint32 & aFrameSize,
137
+         bool & aKeyFrame, bool & aBFrame);
138
+
139
+  /*
140
+      Render the pending cluster to file
141
+  */
142
+  void Flush();
143
+
144
+  void SetMaxClusterSize(const uint32 value);
145
+  void SetMinClusterSize(const uint32 value) {myMinClusterSize = value;}
146
 
147
     protected:
148
-   MainHeader myMainHeader;
149
+  MainHeader myMainHeader;
150
 
151
-   std::vector<Track *> myTracks;
152
-   std::vector<uint8> mySelectedTracks;
153
+  std::vector<Track *> myTracks;
154
+  std::vector<uint8> mySelectedTracks;
155
 
156
-// Track *findTrack(Track * aTrack) const;
157
+//  Track *findTrack(Track * aTrack) const;
158
 
159
-   Cluster  myCurrWriteCluster; /// \todo merge with the write one ?
160
-   uint32   myReadBlockNumber;
161
-   Cluster  myCurrReadCluster;
162
-   binary * myCurrReadBlock;      ///< The buffer containing the current read block
163
-   uint32   myCurrReadBlockSize;  ///< The size of the buffer containing the current read block
164
-   uint8    myCurrReadBlockTrack; ///< The track number of the current track to read
165
+  Cluster  myCurrWriteCluster; /// \todo merge with the write one ?
166
+  uint32   myReadBlockNumber;
167
+  Cluster  myCurrReadCluster;
168
+  binary * myCurrReadBlock;      ///< The buffer containing the current read block
169
+  uint32   myCurrReadBlockSize;  ///< The size of the buffer containing the current read block
170
+  uint8    myCurrReadBlockTrack; ///< The track number of the current track to read
171
 
172
-   uint32 myMaxClusterSize;
173
-   uint32 myMinClusterSize;
174
+  uint32 myMaxClusterSize;
175
+  uint32 myMinClusterSize;
176
 
177
-   StreamInfo myStreamInfo;
178
+  StreamInfo myStreamInfo;
179
 
180
-   CodecHeader myCodecHeader;
181
+  CodecHeader myCodecHeader;
182
 
183
-   inline bool IsMyTrack(const Track * aTrack) const;
184
-   inline bool IsReadingTrack(const uint8 aTrackNum) const;
185
+  inline bool IsMyTrack(const Track * aTrack) const;
186
+  inline bool IsReadingTrack(const uint8 aTrackNum) const;
187
 #endif // OLD
188
-   IOCallback & myFile;
189
+  IOCallback & myFile;
190
 
191
 };
192
 
193
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxAttached.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxAttached.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxAttached.h,v 1.8 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxAttached.h,v 1.8 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_ATTACHED_H
28
 #define LIBMATROSKA_ATTACHED_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxAttachments.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxAttachments.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxAttachments.h,v 1.8 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxAttachments.h,v 1.8 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_ATTACHEMENTS_H
28
 #define LIBMATROSKA_ATTACHEMENTS_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxBlock.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxBlock.h Changed
201
 
1
@@ -9,12 +9,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -26,11 +26,11 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \todo add a PureBlock class to group functionalities between Block and BlockVirtual
22
-   \version \$Id: KaxBlock.h,v 1.24 2004/04/14 23:26:17 robux4 Exp $
23
-   \author Steve Lhomme     <robux4 @ users.sf.net>
24
-   \author Julien Coloos    <suiryc @ users.sf.net>
25
+  \file
26
+  \todo add a PureBlock class to group functionalities between Block and BlockVirtual
27
+  \version \$Id: KaxBlock.h,v 1.24 2004/04/14 23:26:17 robux4 Exp $
28
+  \author Steve Lhomme     <robux4 @ users.sf.net>
29
+  \author Julien Coloos    <suiryc @ users.sf.net>
30
 */
31
 #ifndef LIBMATROSKA_BLOCK_H
32
 #define LIBMATROSKA_BLOCK_H
33
@@ -53,259 +53,259 @@
34
 class KaxBlockBlob;
35
 
36
 class MATROSKA_DLL_API DataBuffer {
37
-   protected:
38
-       binary * myBuffer;
39
-       uint32   mySize;
40
-       bool     bValidValue;
41
-       bool     (*myFreeBuffer)(const DataBuffer & aBuffer); // method to free the internal buffer
42
-       bool     bInternalBuffer;
43
-
44
-   public:
45
-       DataBuffer(binary * aBuffer, uint32 aSize, bool (*aFreeBuffer)(const DataBuffer & aBuffer) = NULL, bool _bInternalBuffer = false)
46
-           :myBuffer(NULL)
47
-           ,mySize(aSize)
48
-           ,bValidValue(true)
49
-           ,myFreeBuffer(aFreeBuffer)
50
-           ,bInternalBuffer(_bInternalBuffer)
51
-       {
52
-           if (bInternalBuffer)
53
-           {
54
-               myBuffer = new (std::nothrow) binary[mySize];
55
-               if (myBuffer == NULL)
56
-                   bValidValue = false;
57
-               else
58
-                   memcpy(myBuffer, aBuffer, mySize); 
59
-           }
60
-           else
61
-               myBuffer = aBuffer;
62
-       }
63
-
64
-       virtual ~DataBuffer() {}
65
-       virtual binary * Buffer() {assert(bValidValue); return myBuffer;}
66
-       virtual uint32   & Size() {return mySize;};
67
-       virtual const binary * Buffer() const {assert(bValidValue); return myBuffer;}
68
-       virtual uint32   Size()   const {return mySize;};
69
-       bool    FreeBuffer(const DataBuffer & aBuffer) {
70
-           bool bResult = true;
71
-           if (myBuffer != NULL && bValidValue) {
72
-               if (myFreeBuffer != NULL)
73
-                   bResult = myFreeBuffer(aBuffer);
74
-               if (bInternalBuffer)
75
-                   delete [] myBuffer;
76
-               myBuffer = NULL;
77
-               mySize = 0;
78
-               bValidValue = false;
79
-           }
80
-           return bResult;
81
-       }
82
-
83
-       virtual DataBuffer * Clone();
84
+  protected:
85
+    binary * myBuffer;
86
+    uint32   mySize;
87
+    bool     bValidValue;
88
+    bool     (*myFreeBuffer)(const DataBuffer & aBuffer); // method to free the internal buffer
89
+    bool     bInternalBuffer;
90
+
91
+  public:
92
+    DataBuffer(binary * aBuffer, uint32 aSize, bool (*aFreeBuffer)(const DataBuffer & aBuffer) = NULL, bool _bInternalBuffer = false)
93
+      :myBuffer(NULL)
94
+      ,mySize(aSize)
95
+      ,bValidValue(true)
96
+      ,myFreeBuffer(aFreeBuffer)
97
+      ,bInternalBuffer(_bInternalBuffer)
98
+    {
99
+      if (bInternalBuffer)
100
+      {
101
+        myBuffer = new (std::nothrow) binary[mySize];
102
+        if (myBuffer == NULL)
103
+          bValidValue = false;
104
+        else
105
+          memcpy(myBuffer, aBuffer, mySize);
106
+      }
107
+      else
108
+        myBuffer = aBuffer;
109
+    }
110
+
111
+    virtual ~DataBuffer() {}
112
+    virtual binary * Buffer() {assert(bValidValue); return myBuffer;}
113
+    virtual uint32   & Size() {return mySize;};
114
+    virtual const binary * Buffer() const {assert(bValidValue); return myBuffer;}
115
+    virtual uint32   Size()   const {return mySize;};
116
+    bool    FreeBuffer(const DataBuffer & aBuffer) {
117
+      bool bResult = true;
118
+      if (myBuffer != NULL && bValidValue) {
119
+        if (myFreeBuffer != NULL)
120
+          bResult = myFreeBuffer(aBuffer);
121
+        if (bInternalBuffer)
122
+          delete [] myBuffer;
123
+        myBuffer = NULL;
124
+        mySize = 0;
125
+        bValidValue = false;
126
+      }
127
+      return bResult;
128
+    }
129
+
130
+    virtual DataBuffer * Clone();
131
 };
132
 
133
 class MATROSKA_DLL_API SimpleDataBuffer : public DataBuffer {
134
-   public:
135
-       SimpleDataBuffer(binary * aBuffer, uint32 aSize, uint32 aOffset, bool (*aFreeBuffer)(const DataBuffer & aBuffer) = myFreeBuffer)
136
-           :DataBuffer(aBuffer + aOffset, aSize, aFreeBuffer)
137
-           ,Offset(aOffset)
138
-           ,BaseBuffer(aBuffer)
139
-       {}
140
-       virtual ~SimpleDataBuffer() {}
141
-
142
-       DataBuffer * Clone() {return new SimpleDataBuffer(*this);}
143
-
144
-   protected:
145
-       uint32 Offset;
146
-       binary * BaseBuffer;
147
-
148
-       static bool myFreeBuffer(const DataBuffer & aBuffer)
149
-       {
150
-           binary *_Buffer = static_cast<const SimpleDataBuffer*>(&aBuffer)->BaseBuffer;
151
-           if (_Buffer != NULL)
152
-               free(_Buffer);
153
-           return true;
154
-       }
155
-
156
-       SimpleDataBuffer(const SimpleDataBuffer & ToClone);
157
+  public:
158
+    SimpleDataBuffer(binary * aBuffer, uint32 aSize, uint32 aOffset, bool (*aFreeBuffer)(const DataBuffer & aBuffer) = myFreeBuffer)
159
+      :DataBuffer(aBuffer + aOffset, aSize, aFreeBuffer)
160
+      ,Offset(aOffset)
161
+      ,BaseBuffer(aBuffer)
162
+    {}
163
+    virtual ~SimpleDataBuffer() {}
164
+
165
+    DataBuffer * Clone() {return new SimpleDataBuffer(*this);}
166
+
167
+  protected:
168
+    uint32 Offset;
169
+    binary * BaseBuffer;
170
+
171
+    static bool myFreeBuffer(const DataBuffer & aBuffer)
172
+    {
173
+      binary *_Buffer = static_cast<const SimpleDataBuffer*>(&aBuffer)->BaseBuffer;
174
+      if (_Buffer != NULL)
175
+        free(_Buffer);
176
+      return true;
177
+    }
178
+
179
+    SimpleDataBuffer(const SimpleDataBuffer & ToClone);
180
 };
181
 
182
 /*!
183
-   \note the data is copied locally, it can be freed right away
184
+  \note the data is copied locally, it can be freed right away
185
 * /
186
 class MATROSKA_DLL_API NotSoSimpleDataBuffer : public SimpleDataBuffer {
187
-   public:
188
-       NotSoSimpleDataBuffer(binary * aBuffer, uint32 aSize, uint32 aOffset)
189
-           :SimpleDataBuffer(new binary[aSize - aOffset], aSize, 0)
190
-       {
191
-           memcpy(BaseBuffer, aBuffer + aOffset, aSize - aOffset);
192
-       }
193
+  public:
194
+    NotSoSimpleDataBuffer(binary * aBuffer, uint32 aSize, uint32 aOffset)
195
+      :SimpleDataBuffer(new binary[aSize - aOffset], aSize, 0)
196
+    {
197
+      memcpy(BaseBuffer, aBuffer + aOffset, aSize - aOffset);
198
+    }
199
 };
200
 */
201
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxBlockData.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxBlockData.h Changed
73
 
1
@@ -9,12 +9,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -26,9 +26,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxBlockData.h,v 1.10 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxBlockData.h,v 1.10 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_BLOCK_ADDITIONAL_H
28
 #define LIBMATROSKA_BLOCK_ADDITIONAL_H
29
@@ -45,27 +45,26 @@
30
 START_LIBMATROSKA_NAMESPACE
31
 
32
 /*!
33
-   \brief element used for B frame-likes
34
+  \brief element used for B frame-likes
35
 */
36
 DECLARE_MKX_SINTEGER_CONS(KaxReferenceBlock)
37
-   public:
38
+  public:
39
         ~KaxReferenceBlock();
40
-       /*!
41
-           \brief override this method to compute the timecode value
42
-       */
43
-       virtual filepos_t UpdateSize(bool bSaveDefault = false, bool bForceRender = false);
44
+    /*!
45
+      \brief override this method to compute the timecode value
46
+    */
47
+    virtual filepos_t UpdateSize(bool bSaveDefault = false, bool bForceRender = false);
48
+
49
+    const KaxBlockBlob & RefBlock() const;
50
+    void SetReferencedBlock(const KaxBlockBlob * aRefdBlock);
51
+    void SetReferencedBlock(const KaxBlockGroup & aRefdBlock);
52
+    void SetParentBlock(const KaxBlockGroup & aParentBlock) {ParentBlock = &aParentBlock;}
53
+    void SetReferencedTimecode(int64 refTimecode) {*static_cast<EbmlSInteger*>(this) = refTimecode; bTimecodeSet = true;};
54
 
55
-       const KaxBlockBlob & RefBlock() const;
56
-       void SetReferencedBlock(const KaxBlockBlob * aRefdBlock);
57
-       void SetReferencedBlock(const KaxBlockGroup & aRefdBlock);
58
-       void SetParentBlock(const KaxBlockGroup & aParentBlock) {ParentBlock = &aParentBlock;}
59
-       
60
-   protected:
61
-       const KaxBlockBlob * RefdBlock;
62
-       const KaxBlockGroup * ParentBlock;
63
-       bool bTimecodeSet;
64
-public:
65
-       void SetReferencedTimecode(int64 refTimecode) {*static_cast<EbmlSInteger*>(this) = refTimecode; bTimecodeSet = true;};
66
+  protected:
67
+    const KaxBlockBlob * RefdBlock;
68
+    const KaxBlockGroup * ParentBlock;
69
+    bool bTimecodeSet;
70
         bool bOurBlob;
71
         void FreeBlob();
72
 };
73
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxChapters.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxChapters.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id$
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id$
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_CHAPTERS_H
28
 #define LIBMATROSKA_CHAPTERS_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxCluster.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxCluster.h Changed
201
 
1
@@ -9,12 +9,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -26,10 +26,10 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxCluster.h,v 1.10 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
-   \author Julien Coloos    <suiryc @ users.sf.net>
24
+  \file
25
+  \version \$Id: KaxCluster.h,v 1.10 2004/04/14 23:26:17 robux4 Exp $
26
+  \author Steve Lhomme     <robux4 @ users.sf.net>
27
+  \author Julien Coloos    <suiryc @ users.sf.net>
28
 
29
 */
30
 #ifndef LIBMATROSKA_CLUSTER_H
31
@@ -49,109 +49,109 @@
32
 class KaxSegment;
33
 
34
 DECLARE_MKX_MASTER_CONS(KaxCluster)
35
-   public:
36
-       /*!
37
-           \brief Addition of a frame without references
38
-
39
-           \param the timecode is expressed in nanoseconds, relative to the beggining of the Segment
40
-       */
41
-       bool AddFrame(const KaxTrackEntry & track, uint64 timecode, DataBuffer & buffer, KaxBlockGroup * & MyNewBlock, LacingType lacing = LACING_AUTO);
42
-       /*!
43
-           \brief Addition of a frame with a backward reference (P frame)
44
-           \param the timecode is expressed in nanoseconds, relative to the beggining of the Segment
45
-
46
-       */
47
-       bool AddFrame(const KaxTrackEntry & track, uint64 timecode, DataBuffer & buffer, KaxBlockGroup * & MyNewBlock, const KaxBlockGroup & PastBlock, LacingType lacing = LACING_AUTO);
48
-
49
-       /*!
50
-           \brief Addition of a frame with a backward+forward reference (B frame)
51
-           \param the timecode is expressed in nanoseconds, relative to the beggining of the Segment
52
-
53
-       */
54
-       bool AddFrame(const KaxTrackEntry & track, uint64 timecode, DataBuffer & buffer, KaxBlockGroup * & MyNewBlock, const KaxBlockGroup & PastBlock, const KaxBlockGroup & ForwBlock, LacingType lacing = LACING_AUTO);
55
-
56
-       /*!
57
-           \brief Render the data to the stream and retrieve the position of BlockGroups for later cue entries
58
-       */
59
-       filepos_t Render(IOCallback & output, KaxCues & CueToUpdate, bool bSaveDefault = false);
60
-
61
-       /*!
62
-           \return the global timecode of this Cluster
63
-       */
64
-       uint64 GlobalTimecode() const;
65
-
66
-       KaxBlockGroup & GetNewBlock();
67
-       
68
-       /*!
69
-           \brief release all the frames of all Blocks
70
-           \note this is a convenience to be able to keep Clusters+Blocks in memory (for future reference) withouht being a memory hog
71
-       */
72
-       void ReleaseFrames();
73
-
74
-       /*!
75
-           \brief return the position offset compared to the beggining of the Segment
76
-       */
77
-       uint64 GetPosition() const;
78
-
79
-       void SetParent(const KaxSegment & aParentSegment) {ParentSegment = &aParentSegment;}
80
-
81
-       void SetPreviousTimecode(uint64 aPreviousTimecode, int64 aTimecodeScale) {
82
-           bPreviousTimecodeIsSet = true; 
83
-           PreviousTimecode = aPreviousTimecode;
84
-           SetGlobalTimecodeScale(aTimecodeScale);
85
-       }
86
-
87
-       /*!
88
-           \note dirty hack to get the mandatory data back after reading
89
-           \todo there should be a better way to get mandatory data
90
-       */
91
-       void InitTimecode(uint64 aTimecode, int64 aTimecodeScale) {
92
-           SetGlobalTimecodeScale(aTimecodeScale);
93
-           MinTimecode = MaxTimecode = PreviousTimecode = aTimecode * TimecodeScale;
94
-           bFirstFrameInside = bPreviousTimecodeIsSet = true;
95
-       }
96
-
97
-       int16 GetBlockLocalTimecode(uint64 GlobalTimecode) const;
98
-
99
-       uint64 GetBlockGlobalTimecode(int16 LocalTimecode);
100
-
101
-       void SetGlobalTimecodeScale(uint64 aGlobalTimecodeScale) {
102
-           TimecodeScale = aGlobalTimecodeScale;
103
-           bTimecodeScaleIsSet = true;
104
-       }
105
-       uint64 GlobalTimecodeScale() const {
106
-           assert(bTimecodeScaleIsSet); 
107
-           return TimecodeScale;
108
-       }
109
-
110
-       bool SetSilentTrackUsed()
111
-       {
112
-           bSilentTracksUsed = true;
113
-           return FindFirstElt(EBML_INFO(KaxClusterSilentTracks), true) != NULL;
114
-       }
115
-
116
-       bool AddBlockBlob(KaxBlockBlob * NewBlob);
117
-
118
-       const KaxSegment *GetParentSegment() const { return ParentSegment; }
119
-
120
-   protected:
121
-       KaxBlockBlob     * currentNewBlob;
122
-       std::vector<KaxBlockBlob*> Blobs;
123
-       KaxBlockGroup    * currentNewBlock;
124
-       const KaxSegment * ParentSegment;
125
-
126
-       uint64 MinTimecode, MaxTimecode, PreviousTimecode;
127
-       int64  TimecodeScale;
128
-
129
-       bool bFirstFrameInside; // used to speed research
130
-       bool bPreviousTimecodeIsSet;
131
-       bool bTimecodeScaleIsSet;
132
-       bool bSilentTracksUsed;
133
-
134
-       /*!
135
-           \note method used internally
136
-       */
137
-       bool AddFrameInternal(const KaxTrackEntry & track, uint64 timecode, DataBuffer & buffer, KaxBlockGroup * & MyNewBlock, const KaxBlockGroup * PastBlock, const KaxBlockGroup * ForwBlock, LacingType lacing);
138
+  public:
139
+    /*!
140
+      \brief Addition of a frame without references
141
+
142
+      \param the timecode is expressed in nanoseconds, relative to the beggining of the Segment
143
+    */
144
+    bool AddFrame(const KaxTrackEntry & track, uint64 timecode, DataBuffer & buffer, KaxBlockGroup * & MyNewBlock, LacingType lacing = LACING_AUTO);
145
+    /*!
146
+      \brief Addition of a frame with a backward reference (P frame)
147
+      \param the timecode is expressed in nanoseconds, relative to the beggining of the Segment
148
+
149
+    */
150
+    bool AddFrame(const KaxTrackEntry & track, uint64 timecode, DataBuffer & buffer, KaxBlockGroup * & MyNewBlock, const KaxBlockGroup & PastBlock, LacingType lacing = LACING_AUTO);
151
+
152
+    /*!
153
+      \brief Addition of a frame with a backward+forward reference (B frame)
154
+      \param the timecode is expressed in nanoseconds, relative to the beggining of the Segment
155
+
156
+    */
157
+    bool AddFrame(const KaxTrackEntry & track, uint64 timecode, DataBuffer & buffer, KaxBlockGroup * & MyNewBlock, const KaxBlockGroup & PastBlock, const KaxBlockGroup & ForwBlock, LacingType lacing = LACING_AUTO);
158
+
159
+    /*!
160
+      \brief Render the data to the stream and retrieve the position of BlockGroups for later cue entries
161
+    */
162
+    filepos_t Render(IOCallback & output, KaxCues & CueToUpdate, bool bSaveDefault = false);
163
+
164
+    /*!
165
+      \return the global timecode of this Cluster
166
+    */
167
+    uint64 GlobalTimecode() const;
168
+
169
+    KaxBlockGroup & GetNewBlock();
170
+
171
+    /*!
172
+      \brief release all the frames of all Blocks
173
+      \note this is a convenience to be able to keep Clusters+Blocks in memory (for future reference) withouht being a memory hog
174
+    */
175
+    void ReleaseFrames();
176
+
177
+    /*!
178
+      \brief return the position offset compared to the beggining of the Segment
179
+    */
180
+    uint64 GetPosition() const;
181
+
182
+    void SetParent(const KaxSegment & aParentSegment) {ParentSegment = &aParentSegment;}
183
+
184
+    void SetPreviousTimecode(uint64 aPreviousTimecode, int64 aTimecodeScale) {
185
+      bPreviousTimecodeIsSet = true;
186
+      PreviousTimecode = aPreviousTimecode;
187
+      SetGlobalTimecodeScale(aTimecodeScale);
188
+    }
189
+
190
+    /*!
191
+      \note dirty hack to get the mandatory data back after reading
192
+      \todo there should be a better way to get mandatory data
193
+    */
194
+    void InitTimecode(uint64 aTimecode, int64 aTimecodeScale) {
195
+      SetGlobalTimecodeScale(aTimecodeScale);
196
+      MinTimecode = MaxTimecode = PreviousTimecode = aTimecode * TimecodeScale;
197
+      bFirstFrameInside = bPreviousTimecodeIsSet = true;
198
+    }
199
+
200
+    int16 GetBlockLocalTimecode(uint64 GlobalTimecode) const;
201
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxClusterData.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxClusterData.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxClusterData.h,v 1.9 2004/04/21 19:50:10 mosu Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxClusterData.h,v 1.9 2004/04/21 19:50:10 mosu Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_CLUSTER_DATA_H
28
 #define LIBMATROSKA_CLUSTER_DATA_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxConfig.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxConfig.h Changed
31
 
1
@@ -9,12 +9,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -26,10 +26,10 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxConfig.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
-   \author Moritz Bunkus <moritz @ bunkus.org>
24
+  \file
25
+  \version \$Id: KaxConfig.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
26
+  \author Steve Lhomme     <robux4 @ users.sf.net>
27
+  \author Moritz Bunkus <moritz @ bunkus.org>
28
 */
29
 #ifndef LIBMATROSKA_CONFIG_H
30
 #define LIBMATROSKA_CONFIG_H
31
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxContentEncoding.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxContentEncoding.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxContentEncoding.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxContentEncoding.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_CONTENT_ENCODING_H
28
 #define LIBMATROSKA_CONTENT_ENCODING_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxContexts.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxContexts.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id$
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id$
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_CONTEXTS_H
28
 #define LIBMATROSKA_CONTEXTS_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxCues.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxCues.h Changed
102
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxCues.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxCues.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_CUES_H
28
 #define LIBMATROSKA_CUES_H
29
@@ -48,42 +48,42 @@
30
 class KaxCuePoint;
31
 
32
 DECLARE_MKX_MASTER(KaxCues)
33
-   public:
34
-       ~KaxCues();
35
+  public:
36
+    ~KaxCues();
37
 
38
-       //bool AddBlockGroup(const KaxBlockGroup & BlockReference); // deprecated
39
-       bool AddBlockBlob(const KaxBlockBlob & BlockReference);
40
+    //bool AddBlockGroup(const KaxBlockGroup & BlockReference); // deprecated
41
+    bool AddBlockBlob(const KaxBlockBlob & BlockReference);
42
 
43
-       /*!
44
-           \brief Indicate that the position for this Block is set
45
-       */
46
-       void PositionSet(const KaxBlockGroup & BlockReference);
47
-       void PositionSet(const KaxBlockBlob & BlockReference);
48
+    /*!
49
+      \brief Indicate that the position for this Block is set
50
+    */
51
+    void PositionSet(const KaxBlockGroup & BlockReference);
52
+    void PositionSet(const KaxBlockBlob & BlockReference);
53
 
54
-       /*!
55
-           \brief override to sort by timecode/track
56
-       */
57
-       filepos_t Render(IOCallback & output, bool bSaveDefault = false) {
58
-           Sort();
59
-           return EbmlMaster::Render(output, bSaveDefault);
60
-       }
61
+    /*!
62
+      \brief override to sort by timecode/track
63
+    */
64
+    filepos_t Render(IOCallback & output, bool bSaveDefault = false) {
65
+      Sort();
66
+      return EbmlMaster::Render(output, bSaveDefault);
67
+    }
68
 
69
-       uint64 GetTimecodePosition(uint64 aTimecode) const;
70
-       const KaxCuePoint * GetTimecodePoint(uint64 aTimecode) const;
71
+    uint64 GetTimecodePosition(uint64 aTimecode) const;
72
+    const KaxCuePoint * GetTimecodePoint(uint64 aTimecode) const;
73
 
74
-       void SetGlobalTimecodeScale(uint64 aGlobalTimecodeScale) {
75
-           mGlobalTimecodeScale = aGlobalTimecodeScale;
76
-           bGlobalTimecodeScaleIsSet = true;
77
-       }
78
-       uint64 GlobalTimecodeScale() const {
79
-           assert(bGlobalTimecodeScaleIsSet); 
80
-           return mGlobalTimecodeScale;
81
-       }
82
+    void SetGlobalTimecodeScale(uint64 aGlobalTimecodeScale) {
83
+      mGlobalTimecodeScale = aGlobalTimecodeScale;
84
+      bGlobalTimecodeScaleIsSet = true;
85
+    }
86
+    uint64 GlobalTimecodeScale() const {
87
+      assert(bGlobalTimecodeScaleIsSet);
88
+      return mGlobalTimecodeScale;
89
+    }
90
 
91
-   protected:
92
-       std::vector<const KaxBlockBlob *> myTempReferences;
93
-       bool   bGlobalTimecodeScaleIsSet;
94
-       uint64 mGlobalTimecodeScale;
95
+  protected:
96
+    std::vector<const KaxBlockBlob *> myTempReferences;
97
+    bool   bGlobalTimecodeScaleIsSet;
98
+    uint64 mGlobalTimecodeScale;
99
 };
100
 
101
 END_LIBMATROSKA_NAMESPACE
102
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxCuesData.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxCuesData.h Changed
73
 
1
@@ -9,12 +9,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -26,9 +26,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxCuesData.h,v 1.8 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxCuesData.h,v 1.8 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_CUES_DATA_H
28
 #define LIBMATROSKA_CUES_DATA_H
29
@@ -49,29 +49,29 @@
30
 class KaxSimpleBlock;
31
 
32
 DECLARE_MKX_MASTER(KaxCuePoint)
33
-   public:
34
-       void PositionSet(const KaxBlockGroup & BlockReference, uint64 GlobalTimecodeScale);
35
-       void PositionSet(const KaxBlockBlob & BlobReference, uint64 GlobalTimecodeScale);
36
-       void PositionSet(const KaxSimpleBlock & BlockReference, uint64 GlobalTimecodeScale);
37
-       void PositionSet(const KaxInternalBlock & BlockReference, const KaxBlockGroup* BlockGroup, uint64 GlobalTimecodeScale);
38
+  public:
39
+    void PositionSet(const KaxBlockGroup & BlockReference, uint64 GlobalTimecodeScale);
40
+    void PositionSet(const KaxBlockBlob & BlobReference, uint64 GlobalTimecodeScale);
41
+    void PositionSet(const KaxSimpleBlock & BlockReference, uint64 GlobalTimecodeScale);
42
+    void PositionSet(const KaxInternalBlock & BlockReference, const KaxBlockGroup* BlockGroup, uint64 GlobalTimecodeScale);
43
 
44
-       virtual bool IsSmallerThan(const EbmlElement *Cmp) const;
45
+    virtual bool IsSmallerThan(const EbmlElement *Cmp) const;
46
 
47
-       const KaxCueTrackPositions * GetSeekPosition() const;
48
-       bool Timecode(uint64 & aTimecode, uint64 GlobalTimecodeScale) const;
49
+    const KaxCueTrackPositions * GetSeekPosition() const;
50
+    bool Timecode(uint64 & aTimecode, uint64 GlobalTimecodeScale) const;
51
 };
52
 
53
 DECLARE_MKX_MASTER(KaxCueTrackPositions)
54
-   public:
55
-       uint64 ClusterPosition() const;
56
-       uint16 TrackNumber() const;
57
+  public:
58
+    uint64 ClusterPosition() const;
59
+    uint16 TrackNumber() const;
60
 };
61
 
62
 #if MATROSKA_VERSION >= 2
63
 DECLARE_MKX_MASTER(KaxCueReference)
64
-   public:
65
-       void AddReference(const KaxBlockGroup & BlockReferenced, uint64 GlobalTimecodeScale);
66
-       void AddReference(const KaxBlockBlob & BlockReferenced, uint64 GlobalTimecodeScale);
67
+  public:
68
+    void AddReference(const KaxBlockGroup & BlockReferenced, uint64 GlobalTimecodeScale);
69
+    void AddReference(const KaxBlockBlob & BlockReferenced, uint64 GlobalTimecodeScale);
70
 };
71
 #endif // MATROSKA_VERSION
72
 
73
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxDefines.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxDefines.h Changed
29
 
1
@@ -9,12 +9,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -26,9 +26,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id$
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id$
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_DEFINES_H
28
 #define LIBMATROSKA_DEFINES_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxInfo.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxInfo.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxInfo.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxInfo.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_INFO_H
28
 #define LIBMATROSKA_INFO_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxInfoData.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxInfoData.h Changed
62
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,11 +28,11 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id$
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
-   \author John Cannon      <spyder2555 @ users.sf.net>
24
-   \author Moritz Bunkus    <moritz @ bunkus.org>
25
+  \file
26
+  \version \$Id$
27
+  \author Steve Lhomme     <robux4 @ users.sf.net>
28
+  \author John Cannon      <spyder2555 @ users.sf.net>
29
+  \author Moritz Bunkus    <moritz @ bunkus.org>
30
 */
31
 #ifndef LIBMATROSKA_INFO_DATA_H
32
 #define LIBMATROSKA_INFO_DATA_H
33
@@ -53,20 +53,20 @@
34
 
35
 DECLARE_MKX_CONTEXT(KaxPrevUID);
36
 class MATROSKA_DLL_API KaxPrevUID : public KaxSegmentUID {
37
-   public:
38
-       KaxPrevUID(EBML_EXTRA_PARAM);
39
-       KaxPrevUID(const KaxPrevUID & ElementToClone) :KaxSegmentUID(ElementToClone){}
40
-       virtual bool ValidateSize() const { return IsFiniteSize() && (GetSize() == 16);}
41
+  public:
42
+    KaxPrevUID(EBML_EXTRA_PARAM);
43
+    KaxPrevUID(const KaxPrevUID & ElementToClone) :KaxSegmentUID(ElementToClone){}
44
+    virtual bool ValidateSize() const { return IsFiniteSize() && (GetSize() == 16);}
45
 
46
         EBML_CONCRETE_CLASS(KaxPrevUID)
47
 };
48
 
49
 DECLARE_MKX_CONTEXT(KaxNextUID);
50
 class MATROSKA_DLL_API KaxNextUID : public KaxSegmentUID {
51
-   public:
52
-       KaxNextUID(EBML_EXTRA_PARAM);
53
-       KaxNextUID(const KaxNextUID & ElementToClone) :KaxSegmentUID(ElementToClone){}
54
-       virtual bool ValidateSize() const { return IsFiniteSize() && (GetSize() == 16);}
55
+  public:
56
+    KaxNextUID(EBML_EXTRA_PARAM);
57
+    KaxNextUID(const KaxNextUID & ElementToClone) :KaxSegmentUID(ElementToClone){}
58
+    virtual bool ValidateSize() const { return IsFiniteSize() && (GetSize() == 16);}
59
 
60
         EBML_CONCRETE_CLASS(KaxNextUID)
61
 };
62
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxSeekHead.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxSeekHead.h Changed
64
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id$
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id$
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_SEEK_HEAD_H
28
 #define LIBMATROSKA_SEEK_HEAD_H
29
@@ -48,22 +48,22 @@
30
 class KaxSegment;
31
 
32
 DECLARE_MKX_MASTER(KaxSeek)
33
-   public:
34
-       int64 Location() const;
35
-       bool IsEbmlId(const EbmlId & aId) const;
36
-       bool IsEbmlId(const KaxSeek & aPoint) const;
37
+  public:
38
+    int64 Location() const;
39
+    bool IsEbmlId(const EbmlId & aId) const;
40
+    bool IsEbmlId(const KaxSeek & aPoint) const;
41
 };
42
 
43
 DECLARE_MKX_MASTER(KaxSeekHead)
44
-   public:
45
-       /*!
46
-           \brief add an element to index in the Meta Seek data
47
-           \note the element should already be written in the file
48
-       */
49
-       KaxSeek * IndexThis(const EbmlElement & aElt, const KaxSegment & ParentSegment);
50
+  public:
51
+    /*!
52
+      \brief add an element to index in the Meta Seek data
53
+      \note the element should already be written in the file
54
+    */
55
+    KaxSeek * IndexThis(const EbmlElement & aElt, const KaxSegment & ParentSegment);
56
 
57
-       KaxSeek * FindFirstOf(const EbmlCallbacks & Callbacks) const;
58
-       KaxSeek * FindNextOf(const KaxSeek &aPrev) const;
59
+    KaxSeek * FindFirstOf(const EbmlCallbacks & Callbacks) const;
60
+    KaxSeek * FindNextOf(const KaxSeek &aPrev) const;
61
 };
62
 
63
 END_LIBMATROSKA_NAMESPACE
64
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxSegment.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxSegment.h Changed
58
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxSegment.h,v 1.8 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxSegment.h,v 1.8 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_SEGMENT_H
28
 #define LIBMATROSKA_SEGMENT_H
29
@@ -44,17 +44,17 @@
30
 START_LIBMATROSKA_NAMESPACE
31
 
32
 DECLARE_MKX_MASTER_CONS(KaxSegment)
33
-   public:
34
-       /*!
35
-           \brief give the position of the element in the segment
36
-       */
37
-       uint64 GetRelativePosition(const EbmlElement & Elt) const;
38
-       uint64 GetRelativePosition(uint64 aGlobalPosition) const;
39
-
40
-       /*!
41
-           \brief give the position of the element in the file
42
-       */
43
-       uint64 GetGlobalPosition(uint64 aRelativePosition) const;
44
+  public:
45
+    /*!
46
+      \brief give the position of the element in the segment
47
+    */
48
+    uint64 GetRelativePosition(const EbmlElement & Elt) const;
49
+    uint64 GetRelativePosition(uint64 aGlobalPosition) const;
50
+
51
+    /*!
52
+      \brief give the position of the element in the file
53
+    */
54
+    uint64 GetGlobalPosition(uint64 aRelativePosition) const;
55
 };
56
 
57
 END_LIBMATROSKA_NAMESPACE
58
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxSemantic.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxSemantic.h Changed
201
 
1
@@ -1,23 +1,23 @@
2
 /**********************************************************************
3
 **  DO NOT EDIT, GENERATED WITH DATA2LIB
4
-** 
5
+**
6
 **  libmatroska : parse Matroska files, see http://www.matroska.org/
7
-** 
8
+**
9
 **  Copyright (c) 2002-2010, Matroska (non-profit organisation)
10
 **  All rights reserved.
11
-** 
12
+**
13
 ** This file is part of libmatroska.
14
 **
15
 ** This library is free software; you can redistribute it and/or
16
 ** modify it under the terms of the GNU Lesser General Public
17
 ** License as published by the Free Software Foundation; either
18
 ** version 2.1 of the License, or (at your option) any later version.
19
-** 
20
+**
21
 ** This library is distributed in the hope that it will be useful,
22
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
23
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
24
 ** Lesser General Public License for more details.
25
-** 
26
+**
27
 ** You should have received a copy of the GNU Lesser General Public
28
 ** License along with this library; if not, write to the Free Software
29
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
30
@@ -49,7 +49,7 @@
31
 
32
 DECLARE_MKX_BINARY (KaxSeekID)
33
 public:
34
-   virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() <= 4;}
35
+  virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() <= 4;}
36
 };
37
 
38
 DECLARE_MKX_UINTEGER(KaxSeekPosition)
39
@@ -62,10 +62,10 @@
40
 DECLARE_MKX_BINARY (KaxSegmentUID)
41
 #if defined(HAVE_EBML2) || defined(HAS_EBML2)
42
 public:
43
-   KaxSegmentUID(EBML_DEF_CONS EBML_DEF_SEP EBML_EXTRA_PARAM);
44
+  KaxSegmentUID(EBML_DEF_CONS EBML_DEF_SEP EBML_EXTRA_PARAM);
45
 #endif
46
 public:
47
-   virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() == 16;}
48
+  virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() == 16;}
49
 };
50
 
51
 DECLARE_MKX_UNISTRING(KaxSegmentFilename)
52
@@ -79,7 +79,7 @@
53
 
54
 DECLARE_MKX_BINARY (KaxSegmentFamily)
55
 public:
56
-   virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() == 16;}
57
+  virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() == 16;}
58
 };
59
 
60
 DECLARE_MKX_MASTER(KaxChapterTranslate)
61
@@ -152,7 +152,7 @@
62
 #if MATROSKA_VERSION >= 2
63
 DECLARE_MKX_SINTEGER(KaxReferenceVirtual)
64
 public:
65
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
66
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
67
 };
68
 
69
 DECLARE_MKX_BINARY (KaxCodecState)
70
@@ -176,22 +176,22 @@
71
 #if MATROSKA_VERSION >= 2
72
 DECLARE_MKX_UINTEGER(KaxSliceFrameNumber)
73
 public:
74
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
75
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
76
 };
77
 
78
 DECLARE_MKX_UINTEGER(KaxSliceBlockAddID)
79
 public:
80
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
81
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
82
 };
83
 
84
 DECLARE_MKX_UINTEGER(KaxSliceDelay)
85
 public:
86
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
87
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
88
 };
89
 
90
 DECLARE_MKX_UINTEGER(KaxSliceDuration)
91
 public:
92
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
93
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
94
 };
95
 
96
 DECLARE_MKX_MASTER(KaxReferenceFrame)
97
@@ -206,7 +206,7 @@
98
 
99
 DECLARE_MKX_BINARY (KaxEncryptedBlock)
100
 public:
101
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
102
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
103
 };
104
 #endif
105
 
106
@@ -253,13 +253,13 @@
107
 
108
 DECLARE_MKX_FLOAT(KaxTrackTimecodeScale)
109
 public:
110
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
111
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
112
 };
113
 
114
 #if MATROSKA_VERSION >= 2
115
 DECLARE_MKX_SINTEGER(KaxTrackOffset)
116
 public:
117
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
118
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
119
 };
120
 #endif
121
 
122
@@ -287,17 +287,17 @@
123
 #if MATROSKA_VERSION >= 2
124
 DECLARE_MKX_UNISTRING(KaxCodecSettings)
125
 public:
126
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
127
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
128
 };
129
 
130
 DECLARE_MKX_STRING(KaxCodecInfoURL)
131
 public:
132
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
133
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
134
 };
135
 
136
 DECLARE_MKX_STRING(KaxCodecDownloadURL)
137
 public:
138
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
139
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
140
 };
141
 
142
 DECLARE_MKX_UINTEGER(KaxCodecDecodeAll)
143
@@ -344,7 +344,7 @@
144
 
145
 DECLARE_MKX_UINTEGER(KaxOldStereoMode)
146
 public:
147
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
148
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
149
 };
150
 #endif
151
 
152
@@ -380,18 +380,18 @@
153
 
154
 DECLARE_MKX_BINARY (KaxVideoColourSpace)
155
 public:
156
-   virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() == 4;}
157
+  virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() == 4;}
158
 };
159
 
160
 #if MATROSKA_VERSION >= 2
161
 DECLARE_MKX_FLOAT(KaxVideoGamma)
162
 public:
163
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
164
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
165
 };
166
 
167
 DECLARE_MKX_FLOAT(KaxVideoFrameRate)
168
 public:
169
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
170
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
171
 };
172
 #endif
173
 
174
@@ -411,7 +411,7 @@
175
 #if MATROSKA_VERSION >= 2
176
 DECLARE_MKX_BINARY (KaxAudioPosition)
177
 public:
178
-   filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
179
+  filepos_t RenderData(IOCallback & output, bool bForceRender, bool bSaveDefault);
180
 };
181
 #endif
182
 
183
@@ -449,7 +449,7 @@
184
 
185
 DECLARE_MKX_BINARY (KaxTrickTrackSegmentUID)
186
 public:
187
-   virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() == 16;}
188
+  virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() == 16;}
189
 };
190
 
191
 DECLARE_MKX_UINTEGER(KaxTrickTrackFlag)
192
@@ -460,7 +460,7 @@
193
 
194
 DECLARE_MKX_BINARY (KaxTrickMasterTrackSegmentUID)
195
 public:
196
-   virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() == 16;}
197
+  virtual bool ValidateSize() const {return IsFiniteSize() && GetSize() == 16;}
198
 };
199
 #endif
200
 
201
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxTag.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxTag.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id$
22
-   \author Steve Lhomme   <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id$
25
+  \author Steve Lhomme   <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_TAG_H
28
 #define LIBMATROSKA_TAG_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxTags.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxTags.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxTags.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxTags.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_TAGS_H
28
 #define LIBMATROSKA_TAGS_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxTrackAudio.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxTrackAudio.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxTrackAudio.h,v 1.11 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxTrackAudio.h,v 1.11 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_TRACK_AUDIO_H
28
 #define LIBMATROSKA_TRACK_AUDIO_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxTrackEntryData.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxTrackEntryData.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxTrackEntryData.h,v 1.9 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxTrackEntryData.h,v 1.9 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_TRACK_ENTRY_DATA_H
28
 #define LIBMATROSKA_TRACK_ENTRY_DATA_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxTrackVideo.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxTrackVideo.h Changed
29
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id$
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id$
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_TRACK_VIDEO_H
28
 #define LIBMATROSKA_TRACK_VIDEO_H
29
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxTracks.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxTracks.h Changed
82
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxTracks.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxTracks.h,v 1.7 2004/04/14 23:26:17 robux4 Exp $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #ifndef LIBMATROSKA_TRACKS_H
28
 #define LIBMATROSKA_TRACKS_H
29
@@ -46,31 +46,31 @@
30
 START_LIBMATROSKA_NAMESPACE
31
 
32
 DECLARE_MKX_MASTER(KaxTrackEntry)
33
-   public:
34
-       EbmlUInteger & TrackNumber() const { return *(static_cast<EbmlUInteger *>(FindElt(EBML_INFO(KaxTrackNumber)))); }
35
+  public:
36
+    EbmlUInteger & TrackNumber() const { return *(static_cast<EbmlUInteger *>(FindElt(EBML_INFO(KaxTrackNumber)))); }
37
 
38
-       void EnableLacing(bool bEnable = true);
39
+    void EnableLacing(bool bEnable = true);
40
 
41
-       /*!
42
-           \note lacing set by default
43
-       */
44
-       inline bool LacingEnabled() const {
45
-           KaxTrackFlagLacing * myLacing = static_cast<KaxTrackFlagLacing *>(FindFirstElt(EBML_INFO(KaxTrackFlagLacing)));
46
-           return((myLacing == NULL) || (uint8(*myLacing) != 0));
47
-       }
48
+    /*!
49
+      \note lacing set by default
50
+    */
51
+    inline bool LacingEnabled() const {
52
+      KaxTrackFlagLacing * myLacing = static_cast<KaxTrackFlagLacing *>(FindFirstElt(EBML_INFO(KaxTrackFlagLacing)));
53
+      return((myLacing == NULL) || (uint8(*myLacing) != 0));
54
+    }
55
 
56
-       void SetGlobalTimecodeScale(uint64 aGlobalTimecodeScale) {
57
-           mGlobalTimecodeScale = aGlobalTimecodeScale;
58
-           bGlobalTimecodeScaleIsSet = true;
59
-       }
60
-       uint64 GlobalTimecodeScale() const {
61
-           assert(bGlobalTimecodeScaleIsSet); 
62
-           return mGlobalTimecodeScale;
63
-       }
64
+    void SetGlobalTimecodeScale(uint64 aGlobalTimecodeScale) {
65
+      mGlobalTimecodeScale = aGlobalTimecodeScale;
66
+      bGlobalTimecodeScaleIsSet = true;
67
+    }
68
+    uint64 GlobalTimecodeScale() const {
69
+      assert(bGlobalTimecodeScaleIsSet);
70
+      return mGlobalTimecodeScale;
71
+    }
72
 
73
-   protected:
74
-       bool   bGlobalTimecodeScaleIsSet;
75
-       uint64 mGlobalTimecodeScale;
76
+  protected:
77
+    bool   bGlobalTimecodeScaleIsSet;
78
+    uint64 mGlobalTimecodeScale;
79
 };
80
 
81
 END_LIBMATROSKA_NAMESPACE
82
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxTypes.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxTypes.h Changed
53
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,8 +28,8 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxTypes.h,v 1.4 2004/04/14 23:26:17 robux4 Exp $
22
+  \file
23
+  \version \$Id: KaxTypes.h,v 1.4 2004/04/14 23:26:17 robux4 Exp $
24
 */
25
 #ifndef LIBMATROSKA_TYPES_H
26
 #define LIBMATROSKA_TYPES_H
27
@@ -41,17 +41,17 @@
28
 START_LIBMATROSKA_NAMESPACE
29
 
30
 enum LacingType {
31
-   LACING_NONE = 0,
32
-   LACING_XIPH,
33
-   LACING_FIXED,
34
-   LACING_EBML,
35
-   LACING_AUTO
36
+  LACING_NONE = 0,
37
+  LACING_XIPH,
38
+  LACING_FIXED,
39
+  LACING_EBML,
40
+  LACING_AUTO
41
 };
42
 
43
 enum BlockBlobType {
44
-   BLOCK_BLOB_NO_SIMPLE = 0,
45
-   BLOCK_BLOB_SIMPLE_AUTO,
46
-   BLOCK_BLOB_ALWAYS_SIMPLE,
47
+  BLOCK_BLOB_NO_SIMPLE = 0,
48
+  BLOCK_BLOB_SIMPLE_AUTO,
49
+  BLOCK_BLOB_ALWAYS_SIMPLE,
50
 };
51
 
52
 END_LIBMATROSKA_NAMESPACE
53
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/KaxVersion.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/KaxVersion.h Changed
30
 
1
@@ -26,9 +26,9 @@
2
 **********************************************************************/
3
 
4
 /*!
5
-   \file
6
-   \version \$Id: KaxVersion.h,v 1.13 2004/04/23 16:46:07 mosu Exp $
7
-   \author Steve Lhomme     <robux4 @ users.sf.net>
8
+  \file
9
+  \version \$Id: KaxVersion.h,v 1.13 2004/04/23 16:46:07 mosu Exp $
10
+  \author Steve Lhomme     <robux4 @ users.sf.net>
11
 */
12
 #ifndef LIBMATROSKA_VERSION_H
13
 #define LIBMATROSKA_VERSION_H
14
@@ -40,13 +40,13 @@
15
 
16
 START_LIBMATROSKA_NAMESPACE
17
 
18
-#define LIBMATROSKA_VERSION 0x010401
19
+#define LIBMATROSKA_VERSION 0x010404
20
 
21
 extern const ccc::string KaxCodeVersion;
22
 extern const ccc::string KaxCodeDate;
23
 
24
 /*!
25
-   \todo Improve the CRC/ECC system (backward and forward possible ?) to fit streaming/live writing/simple reading
26
+  \todo Improve the CRC/ECC system (backward and forward possible ?) to fit streaming/live writing/simple reading
27
 */
28
 
29
 END_LIBMATROSKA_NAMESPACE
30
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/c/libmatroska.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/c/libmatroska.h Changed
16
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
makemkv-oss-1.9.5.tar.xz/libmatroska/inc/matroska/c/libmatroska_t.h -> makemkv-oss-1.10.2.tar.xz/libmatroska/inc/matroska/c/libmatroska_t.h Changed
25
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -69,7 +69,7 @@
17
     \note this should be used by the libmatroska internals
18
 */
19
 typedef enum {
20
-   error_null_pointer  ///< NULL pointer where something else is expected
21
+  error_null_pointer  ///< NULL pointer where something else is expected
22
 } matroska_error_t;
23
 
24
 typedef void *matroska_stream;
25
makemkv-oss-1.9.5.tar.xz/libmatroska/src/FileKax.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/FileKax.cpp Changed
201
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -47,404 +47,370 @@
17
 //typedef Track *TrackID;
18
 
19
 FileMatroska::FileMatroska(IOCallback & output)
20
- :myFile(output)
21
+  :myFile(output)
22
 #ifdef OLD
23
- ,myCurrReadBlock(NULL)
24
- ,myMinClusterSize(5*1024)      // 5KB is the min size of a cluster
25
- ,myMaxClusterSize(2*1024*1024) // 2MB is the max size of a cluster
26
- ,myCurrReadBlockTrack(0)
27
- ,myCurrWriteCluster(2*1024*1024) // myMaxClusterSize
28
- ,myCurrReadCluster(NULL)
29
- ,myReadBlockNumber(0)
30
+  ,myCurrReadBlock(NULL)
31
+  ,myMinClusterSize(5*1024)      // 5KB is the min size of a cluster
32
+  ,myMaxClusterSize(2*1024*1024) // 2MB is the max size of a cluster
33
+  ,myCurrReadBlockTrack(0)
34
+  ,myCurrWriteCluster(2*1024*1024) // myMaxClusterSize
35
+  ,myCurrReadCluster(NULL)
36
+  ,myReadBlockNumber(0)
37
 #endif // OLD
38
 {
39
 #ifdef OLD
40
-    myStreamInfo.MainHeaderSize = TypeHeader::default_size() +
41
-       ActualHeader::default_size() + 
42
-       ExtendedInfo::default_size() + 
43
-       ContentInfo::default_size();
44
-    myStreamInfo.TrackEntrySize = Track::default_size();
45
-    myStreamInfo.BlockHeadSize = BLOCK_HEADER_SIZE;
46
-    myStreamInfo.ClusterHeadSize = CLUSTER_HEADER_SIZE;
47
-    myStreamInfo.ClusterFootSize = CLUSTER_TRAILER_SIZE;
48
+  myStreamInfo.MainHeaderSize = TypeHeader::default_size() +
49
+    ActualHeader::default_size() +
50
+    ExtendedInfo::default_size() +
51
+    ContentInfo::default_size();
52
+  myStreamInfo.TrackEntrySize = Track::default_size();
53
+  myStreamInfo.BlockHeadSize = BLOCK_HEADER_SIZE;
54
+  myStreamInfo.ClusterHeadSize = CLUSTER_HEADER_SIZE;
55
+  myStreamInfo.ClusterFootSize = CLUSTER_TRAILER_SIZE;
56
 #endif // OLD
57
 }
58
 
59
 FileMatroska::~FileMatroska()
60
 {
61
-//    if (myCurrCluster != NULL)
62
-// throw 0; // there are some data left to write
63
-//    if (myCurrReadCluster != NULL || myCurrReadBlock != NULL)
64
-// throw 0; // there are some data left to write
65
+  //  if (myCurrCluster != NULL)
66
+  //    throw 0; // there are some data left to write
67
+  //  if (myCurrReadCluster != NULL || myCurrReadBlock != NULL)
68
+  //    throw 0; // there are some data left to write
69
 }
70
 
71
 #ifdef OLD
72
 void FileMatroska::SetMaxClusterSize(const uint32 value)
73
 {
74
-    myMaxClusterSize = value;
75
-    myCurrWriteCluster.setMaxSize(value);
76
+  myMaxClusterSize = value;
77
+  myCurrWriteCluster.setMaxSize(value);
78
 }
79
 
80
 void FileMatroska::Close(const uint32 aTimeLength)
81
 {
82
-    Flush();
83
+  Flush();
84
 
85
-    // get the file size
86
-    myFile.setFilePointer(0,seek_end);
87
-    myMainHeader.type_SetSize(myFile.getFilePointer());
88
+  // get the file size
89
+  myFile.setFilePointer(0,seek_end);
90
+  myMainHeader.type_SetSize(myFile.getFilePointer());
91
 
92
-    // rewrite the header at the beginning
93
-    myFile.setFilePointer(0,seek_beginning);
94
+  // rewrite the header at the beginning
95
+  myFile.setFilePointer(0,seek_beginning);
96
 
97
-    // get the Track-entry size
98
-    uint32 track_entries_size = 0;
99
-    for (size_t i=0; i<myTracks.size(); i++)
100
-    {
101
-   track_entries_size += myTracks[i]->default_size();
102
-    }
103
+  // get the Track-entry size
104
+  uint32 track_entries_size = 0;
105
+  for (size_t i=0; i<myTracks.size(); i++) {
106
+    track_entries_size += myTracks[i]->default_size();
107
+  }
108
 
109
-    myStreamInfo.TrackEntriesSize = track_entries_size;
110
-    myStreamInfo.TimeLength = aTimeLength;
111
-    myMainHeader.Render(myFile, myStreamInfo);
112
+  myStreamInfo.TrackEntriesSize = track_entries_size;
113
+  myStreamInfo.TimeLength = aTimeLength;
114
+  myMainHeader.Render(myFile, myStreamInfo);
115
 
116
-    for (i=0; i<myTracks.size(); i++)
117
-    {
118
-   delete myTracks[i];
119
-    }
120
+  for (i=0; i<myTracks.size(); i++) {
121
+    delete myTracks[i];
122
+  }
123
 }
124
 
125
 /*!
126
-    \warning after rendering the head, some parameters are locked
127
+  \warning after rendering the head, some parameters are locked
128
 */
129
 filepos_t FileMatroska::RenderHead(const std::string & aEncoderApp)
130
 {
131
-    try {
132
-   uint32 track_entries_size = 0;
133
-   for (size_t i=0; i<myTracks.size(); i++)
134
-   {
135
-       track_entries_size += myTracks[i]->default_size();
136
-   }
137
-
138
-   std::string aStr = LIB_NAME;
139
-   aStr += " ";
140
-   aStr += VERSION;
141
-   myStreamInfo.EncoderLib = aStr;
142
-
143
-   myStreamInfo.EncoderApp = aEncoderApp;
144
-
145
-   myStreamInfo.TrackEntryPosition = 0 + myStreamInfo.MainHeaderSize;
146
-   myStreamInfo.TrackEntriesSize = myTracks.size() * myStreamInfo.TrackEntrySize;
147
-
148
-   myStreamInfo.CodecEntryPosition = myStreamInfo.MainHeaderSize + myStreamInfo.TrackEntriesSize;
149
-   myStreamInfo.CodecEntrySize = 4;
150
-   for (i=0; i<myTracks.size(); i++)
151
-   {
152
-       myStreamInfo.CodecEntrySize += myTracks[i]->CodecSize();
153
-   }
154
-
155
-   // Main Header
156
-   filepos_t result = myMainHeader.Render(myFile, myStreamInfo);
157
-
158
-   // Track Entries
159
-   for (i=0; i<myTracks.size(); i++)
160
-   {
161
-       myTracks[i]->RenderEntry(myFile, i+1);
162
-   }
163
-   myStreamInfo.ClusterPosition = myStreamInfo.CodecEntryPosition + myStreamInfo.CodecEntrySize;
164
-
165
-   // Codec Header
166
-   result = CodecHeader::Render(myFile, myTracks);
167
-
168
-   return result;
169
+  try {
170
+    uint32 track_entries_size = 0;
171
+    for (size_t i=0; i<myTracks.size(); i++) {
172
+      track_entries_size += myTracks[i]->default_size();
173
+    }
174
+
175
+    std::string aStr = LIB_NAME;
176
+    aStr += " ";
177
+    aStr += VERSION;
178
+    myStreamInfo.EncoderLib = aStr;
179
+
180
+    myStreamInfo.EncoderApp = aEncoderApp;
181
+
182
+    myStreamInfo.TrackEntryPosition = 0 + myStreamInfo.MainHeaderSize;
183
+    myStreamInfo.TrackEntriesSize = myTracks.size() * myStreamInfo.TrackEntrySize;
184
+
185
+    myStreamInfo.CodecEntryPosition = myStreamInfo.MainHeaderSize + myStreamInfo.TrackEntriesSize;
186
+    myStreamInfo.CodecEntrySize = 4;
187
+    for (i=0; i<myTracks.size(); i++) {
188
+      myStreamInfo.CodecEntrySize += myTracks[i]->CodecSize();
189
     }
190
-    catch (exception & Ex)
191
-    {
192
-   throw Ex;
193
+
194
+    // Main Header
195
+    filepos_t result = myMainHeader.Render(myFile, myStreamInfo);
196
+
197
+    // Track Entries
198
+    for (i=0; i<myTracks.size(); i++) {
199
+      myTracks[i]->RenderEntry(myFile, i+1);
200
     }
201
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxAttached.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxAttached.cpp Changed
41
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxAttached.cpp 1202 2005-08-30 14:39:01Z robux4 $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxAttached.cpp 1202 2005-08-30 14:39:01Z robux4 $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #include "matroska/KaxContexts.h"
28
 #include "matroska/KaxDefines.h"
29
@@ -43,9 +43,9 @@
30
 START_LIBMATROSKA_NAMESPACE
31
 
32
 KaxAttached::KaxAttached(EBML_EXTRA_DEF)
33
- :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxAttached) EBML_DEF_SEP EBML_EXTRA_CALL)
34
+  :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxAttached) EBML_DEF_SEP EBML_EXTRA_CALL)
35
 {
36
-   SetSizeLength(2); // mandatory min size support (for easier updating) (2^(7*2)-2 = 16Ko)
37
+  SetSizeLength(2); // mandatory min size support (for easier updating) (2^(7*2)-2 = 16Ko)
38
 }
39
 
40
 END_LIBMATROSKA_NAMESPACE
41
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxAttachments.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxAttachments.cpp Changed
41
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxAttachments.cpp 640 2004-07-09 21:05:36Z mosu $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxAttachments.cpp 640 2004-07-09 21:05:36Z mosu $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #include "matroska/KaxContexts.h"
28
 #include "matroska/KaxDefines.h"
29
@@ -42,9 +42,9 @@
30
 START_LIBMATROSKA_NAMESPACE
31
 
32
 KaxAttachments::KaxAttachments(EBML_EXTRA_DEF)
33
- :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxAttachments) EBML_DEF_SEP EBML_EXTRA_CALL)
34
+  :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxAttachments) EBML_DEF_SEP EBML_EXTRA_CALL)
35
 {
36
-   SetSizeLength(2); // mandatory min size support (for easier updating) (2^(7*2)-2 = 16Ko)
37
+  SetSizeLength(2); // mandatory min size support (for easier updating) (2^(7*2)-2 = 16Ko)
38
 }
39
 
40
 END_LIBMATROSKA_NAMESPACE
41
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxBlock.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxBlock.cpp Changed
201
 
1
@@ -9,12 +9,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -26,15 +26,18 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxBlock.cpp 1265 2007-01-14 17:20:35Z mosu $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
-   \author Julien Coloos    <suiryc @ users.sf.net>
24
+  \file
25
+  \version \$Id: KaxBlock.cpp 1265 2007-01-14 17:20:35Z mosu $
26
+  \author Steve Lhomme     <robux4 @ users.sf.net>
27
+  \author Julien Coloos    <suiryc @ users.sf.net>
28
+  \author Moritz Bunkus <moritz@bunkus.org>
29
 */
30
 #include <lgpl/cassert>
31
 
32
 //#include <streams.h>
33
 
34
+#include "ebml/MemReadIOCallback.h"
35
+#include "ebml/SafeReadIOCallback.h"
36
 #include "matroska/KaxBlock.h"
37
 #include "matroska/KaxContexts.h"
38
 #include "matroska/KaxBlockData.h"
39
@@ -45,1002 +48,1026 @@
40
 
41
 DataBuffer * DataBuffer::Clone()
42
 {
43
-   binary *ClonedData = (binary *)malloc(mySize * sizeof(binary));
44
-   assert(ClonedData != NULL);
45
-   memcpy(ClonedData, myBuffer ,mySize );
46
+  binary *ClonedData = (binary *)malloc(mySize * sizeof(binary));
47
+  assert(ClonedData != NULL);
48
+  memcpy(ClonedData, myBuffer ,mySize );
49
 
50
-   SimpleDataBuffer * result = new SimpleDataBuffer(ClonedData, mySize, 0);
51
-   result->bValidValue = bValidValue;
52
-   return result;
53
+  SimpleDataBuffer * result = new SimpleDataBuffer(ClonedData, mySize, 0);
54
+  result->bValidValue = bValidValue;
55
+  return result;
56
 }
57
 
58
 SimpleDataBuffer::SimpleDataBuffer(const SimpleDataBuffer & ToClone)
59
- :DataBuffer((binary *)malloc(ToClone.mySize * sizeof(binary)), ToClone.mySize, myFreeBuffer)
60
+  :DataBuffer((binary *)malloc(ToClone.mySize * sizeof(binary)), ToClone.mySize, myFreeBuffer)
61
 {
62
-   assert(myBuffer != NULL);
63
-   memcpy(myBuffer, ToClone.myBuffer ,mySize );
64
-   bValidValue = ToClone.bValidValue;
65
+  assert(myBuffer != NULL);
66
+  memcpy(myBuffer, ToClone.myBuffer ,mySize );
67
+  bValidValue = ToClone.bValidValue;
68
 }
69
 
70
 bool KaxInternalBlock::ValidateSize() const
71
 {
72
-   return (GetSize() >= 4); /// for the moment
73
+  return (GetSize() >= 4); /// for the moment
74
 }
75
 
76
 KaxInternalBlock::~KaxInternalBlock()
77
 {
78
-   ReleaseFrames();
79
+  ReleaseFrames();
80
 }
81
 
82
 KaxInternalBlock::KaxInternalBlock(const KaxInternalBlock & ElementToClone)
83
- :EbmlBinary(ElementToClone)
84
- ,myBuffers(ElementToClone.myBuffers.size())
85
- ,Timecode(ElementToClone.Timecode)
86
- ,LocalTimecode(ElementToClone.LocalTimecode)
87
- ,bLocalTimecodeUsed(ElementToClone.bLocalTimecodeUsed)
88
- ,TrackNumber(ElementToClone.TrackNumber)
89
- ,ParentCluster(ElementToClone.ParentCluster) ///< \todo not exactly
90
+  :EbmlBinary(ElementToClone)
91
+  ,myBuffers(ElementToClone.myBuffers.size())
92
+  ,Timecode(ElementToClone.Timecode)
93
+  ,LocalTimecode(ElementToClone.LocalTimecode)
94
+  ,bLocalTimecodeUsed(ElementToClone.bLocalTimecodeUsed)
95
+  ,TrackNumber(ElementToClone.TrackNumber)
96
+  ,ParentCluster(ElementToClone.ParentCluster) ///< \todo not exactly
97
 {
98
-   // add a clone of the list
99
-   std::vector<DataBuffer *>::const_iterator Itr = ElementToClone.myBuffers.begin();
100
-   std::vector<DataBuffer *>::iterator myItr = myBuffers.begin();
101
-   while (Itr != ElementToClone.myBuffers.end())
102
-   {
103
-       *myItr = (*Itr)->Clone();
104
-       Itr++; myItr++;
105
-   }
106
+  // add a clone of the list
107
+  std::vector<DataBuffer *>::const_iterator Itr = ElementToClone.myBuffers.begin();
108
+  std::vector<DataBuffer *>::iterator myItr = myBuffers.begin();
109
+  while (Itr != ElementToClone.myBuffers.end()) {
110
+    *myItr = (*Itr)->Clone();
111
+    ++Itr; ++myItr;
112
+  }
113
 }
114
 
115
 
116
 KaxBlockGroup::~KaxBlockGroup()
117
 {
118
-//NOTE("KaxBlockGroup::~KaxBlockGroup");
119
+  //NOTE("KaxBlockGroup::~KaxBlockGroup");
120
 }
121
 
122
 KaxBlockGroup::KaxBlockGroup(EBML_EXTRA_DEF)
123
- :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxBlockGroup) EBML_DEF_SEP EBML_EXTRA_CALL)
124
- ,ParentCluster(NULL)
125
- ,ParentTrack(NULL)
126
+  :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxBlockGroup) EBML_DEF_SEP EBML_EXTRA_CALL)
127
+  ,ParentCluster(NULL)
128
+  ,ParentTrack(NULL)
129
 {}
130
 
131
 /*!
132
-   \todo handle flags
133
-   \todo hardcoded limit of the number of frames in a lace should be a parameter
134
-   \return true if more frames can be added to this Block
135
+  \todo handle flags
136
+  \todo hardcoded limit of the number of frames in a lace should be a parameter
137
+  \return true if more frames can be added to this Block
138
 */
139
 bool KaxInternalBlock::AddFrame(const KaxTrackEntry & track, uint64 timecode, DataBuffer & buffer, LacingType lacing, bool invisible)
140
 {
141
-   SetValueIsSet();
142
-   if (myBuffers.size() == 0) {
143
-       // first frame
144
-       Timecode = timecode;
145
-       TrackNumber = track.TrackNumber();
146
-       mInvisible = invisible;
147
-       mLacing = lacing;
148
-   }
149
-   myBuffers.push_back(&buffer);
150
-
151
-   // we don't allow more than 8 frames in a Block because the overhead improvement is minimal
152
-   if (/*myBuffers.size() >= 8 ||*/ lacing == LACING_NONE)
153
-       return false;
154
-
155
-   if (lacing == LACING_XIPH)
156
-       // decide wether a new frame can be added or not
157
-       // a frame in a lace is not efficient when the place necessary to code it in a lace is bigger 
158
-       // than the size of a simple Block. That means more than 6 bytes (4 in struct + 2 for EBML) to code the size
159
-       return (buffer.Size() < 6*0xFF);
160
-   else
161
-       return true;
162
+  SetValueIsSet();
163
+  if (myBuffers.size() == 0) {
164
+    // first frame
165
+    Timecode = timecode;
166
+    TrackNumber = track.TrackNumber();
167
+    mInvisible = invisible;
168
+    mLacing = lacing;
169
+  }
170
+  myBuffers.push_back(&buffer);
171
+
172
+  // we don't allow more than 8 frames in a Block because the overhead improvement is minimal
173
+  if (/*myBuffers.size() >= 8 ||*/ lacing == LACING_NONE)
174
+    return false;
175
+
176
+  if (lacing == LACING_XIPH)
177
+    // decide wether a new frame can be added or not
178
+    // a frame in a lace is not efficient when the place necessary to code it in a lace is bigger
179
+    // than the size of a simple Block. That means more than 6 bytes (4 in struct + 2 for EBML) to code the size
180
+    return (buffer.Size() < 6*0xFF);
181
+  else
182
+    return true;
183
 }
184
 
185
 /*!
186
-       \return Returns the lacing type that produces the smallest footprint.
187
+  \return Returns the lacing type that produces the smallest footprint.
188
 */
189
 LacingType KaxInternalBlock::GetBestLacingType() const {
190
-   int XiphLacingSize, EbmlLacingSize, i;
191
-   bool SameSize = true;
192
-
193
-   if (myBuffers.size() <= 1)
194
-       return LACING_NONE;
195
-
196
-   XiphLacingSize = 1; // Number of laces is stored in 1 byte.
197
-   EbmlLacingSize = 1;
198
-   for (i = 0; i < (int)myBuffers.size() - 1; i++) {
199
-       if (myBuffers[i]->Size() != myBuffers[i + 1]->Size())
200
-           SameSize = false;
201
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxBlockData.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxBlockData.cpp Changed
137
 
1
@@ -9,12 +9,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -26,9 +26,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxBlockData.cpp 1226 2005-10-13 21:16:43Z robux4 $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxBlockData.cpp 1226 2005-10-13 21:16:43Z robux4 $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #include <lgpl/cassert>
28
 
29
@@ -44,71 +44,71 @@
30
 
31
 const KaxBlockBlob & KaxReferenceBlock::RefBlock() const
32
 {
33
-   assert(RefdBlock != NULL);
34
-   return *RefdBlock;
35
+  assert(RefdBlock != NULL);
36
+  return *RefdBlock;
37
 }
38
 
39
 KaxReferenceBlock::KaxReferenceBlock(EBML_EXTRA_DEF)
40
-:EBML_DEF_SINTEGER(KaxReferenceBlock)EBML_DEF_SEP
41
-RefdBlock(NULL)
42
-,ParentBlock(NULL)
43
-,bTimecodeSet(false)
44
-,bOurBlob(false)
45
+  :EBML_DEF_SINTEGER(KaxReferenceBlock)EBML_DEF_SEP
46
+  RefdBlock(NULL)
47
+  ,ParentBlock(NULL)
48
+  ,bTimecodeSet(false)
49
+  ,bOurBlob(false)
50
 {
51
-    bTimecodeSet = false;
52
+  bTimecodeSet = false;
53
 }
54
 
55
 KaxReferenceBlock::KaxReferenceBlock(const KaxReferenceBlock & ElementToClone)
56
-:EbmlSInteger(ElementToClone)
57
-,RefdBlock(NULL)
58
-,ParentBlock(NULL)
59
-,bTimecodeSet(ElementToClone.bTimecodeSet)
60
-,bOurBlob(false)
61
+  :EbmlSInteger(ElementToClone)
62
+  ,RefdBlock(NULL)
63
+  ,ParentBlock(NULL)
64
+  ,bTimecodeSet(ElementToClone.bTimecodeSet)
65
+  ,bOurBlob(false)
66
 {
67
 }
68
 
69
 KaxReferenceBlock::~KaxReferenceBlock()
70
 {
71
-    FreeBlob();
72
+  FreeBlob();
73
 }
74
 
75
 void KaxReferenceBlock::FreeBlob()
76
 {
77
-    if (bOurBlob && RefdBlock!=NULL)
78
-        delete RefdBlock;
79
-    RefdBlock = NULL;
80
+  if (bOurBlob && RefdBlock!=NULL)
81
+    delete RefdBlock;
82
+  RefdBlock = NULL;
83
 }
84
 
85
 filepos_t KaxReferenceBlock::UpdateSize(bool bSaveDefault, bool bForceRender)
86
 {
87
-   if (!bTimecodeSet) {
88
-       assert(RefdBlock != NULL);
89
-       assert(ParentBlock != NULL);
90
+  if (!bTimecodeSet) {
91
+    assert(RefdBlock != NULL);
92
+    assert(ParentBlock != NULL);
93
 
94
-       const KaxInternalBlock &block = *RefdBlock;
95
-       *static_cast<EbmlSInteger*>(this) = (int64(block.GlobalTimecode()) - int64(ParentBlock->GlobalTimecode())) / int64(ParentBlock->GlobalTimecodeScale());
96
-   }
97
-   return EbmlSInteger::UpdateSize(bSaveDefault, bForceRender);
98
+    const KaxInternalBlock &block = *RefdBlock;
99
+    *static_cast<EbmlSInteger*>(this) = (int64(block.GlobalTimecode()) - int64(ParentBlock->GlobalTimecode())) / int64(ParentBlock->GlobalTimecodeScale());
100
+  }
101
+  return EbmlSInteger::UpdateSize(bSaveDefault, bForceRender);
102
 }
103
 
104
 void KaxReferenceBlock::SetReferencedBlock(const KaxBlockBlob * aRefdBlock)
105
 {
106
-   assert(RefdBlock == NULL);
107
-   assert(aRefdBlock != NULL);
108
-    FreeBlob();
109
-   RefdBlock = aRefdBlock; 
110
-    bOurBlob = true;
111
-   SetValueIsSet();
112
+  assert(RefdBlock == NULL);
113
+  assert(aRefdBlock != NULL);
114
+  FreeBlob();
115
+  RefdBlock = aRefdBlock;
116
+  bOurBlob = true;
117
+  SetValueIsSet();
118
 }
119
 
120
 void KaxReferenceBlock::SetReferencedBlock(const KaxBlockGroup & aRefdBlock)
121
 {
122
-    FreeBlob();
123
-   KaxBlockBlob *block_blob = new KaxBlockBlob(BLOCK_BLOB_NO_SIMPLE);
124
-   block_blob->SetBlockGroup(*const_cast<KaxBlockGroup*>(&aRefdBlock));
125
-   RefdBlock = block_blob;
126
-    bOurBlob = true;
127
-   SetValueIsSet();
128
+  FreeBlob();
129
+  KaxBlockBlob *block_blob = new KaxBlockBlob(BLOCK_BLOB_NO_SIMPLE);
130
+  block_blob->SetBlockGroup(*const_cast<KaxBlockGroup*>(&aRefdBlock));
131
+  RefdBlock = block_blob;
132
+  bOurBlob = true;
133
+  SetValueIsSet();
134
 }
135
 
136
 END_LIBMATROSKA_NAMESPACE
137
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxCluster.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxCluster.cpp Changed
201
 
1
@@ -9,12 +9,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -26,9 +26,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxCluster.cpp 1228 2005-10-14 19:36:51Z robux4 $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxCluster.cpp 1228 2005-10-14 19:36:51Z robux4 $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #include "matroska/KaxCluster.h"
28
 #include "matroska/KaxBlock.h"
29
@@ -40,280 +40,267 @@
30
 START_LIBMATROSKA_NAMESPACE
31
 
32
 KaxCluster::KaxCluster(EBML_EXTRA_DEF)
33
-   :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxCluster) EBML_DEF_SEP EBML_EXTRA_CALL)
34
-   ,currentNewBlock(NULL)
35
-   ,ParentSegment(NULL)
36
-   ,bFirstFrameInside(false)
37
-   ,bPreviousTimecodeIsSet(false)
38
-   ,bTimecodeScaleIsSet(false)
39
-   ,bSilentTracksUsed(false)
40
+  :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxCluster) EBML_DEF_SEP EBML_EXTRA_CALL)
41
+  ,currentNewBlock(NULL)
42
+  ,ParentSegment(NULL)
43
+  ,bFirstFrameInside(false)
44
+  ,bPreviousTimecodeIsSet(false)
45
+  ,bTimecodeScaleIsSet(false)
46
+  ,bSilentTracksUsed(false)
47
 {}
48
 
49
-KaxCluster::KaxCluster(const KaxCluster & ElementToClone) 
50
- :EbmlMaster(ElementToClone)
51
- ,bSilentTracksUsed(ElementToClone.bSilentTracksUsed)
52
+KaxCluster::KaxCluster(const KaxCluster & ElementToClone)
53
+  :EbmlMaster(ElementToClone)
54
+  ,bSilentTracksUsed(ElementToClone.bSilentTracksUsed)
55
 {
56
-   // update the parent of each children
57
-   EBML_MASTER_ITERATOR Itr = begin();
58
-   while (Itr != end())
59
-   {
60
-       if (EbmlId(**Itr) == EBML_ID(KaxBlockGroup)) {
61
-           static_cast<KaxBlockGroup   *>(*Itr)->SetParent(*this);
62
-       } else if (EbmlId(**Itr) == EBML_ID(KaxBlock)) {
63
-           static_cast<KaxBlock        *>(*Itr)->SetParent(*this);
64
+  // update the parent of each children
65
+  EBML_MASTER_ITERATOR Itr = begin();
66
+  while (Itr != end()) {
67
+    if (EbmlId(**Itr) == EBML_ID(KaxBlockGroup)) {
68
+      static_cast<KaxBlockGroup   *>(*Itr)->SetParent(*this);
69
+    } else if (EbmlId(**Itr) == EBML_ID(KaxBlock)) {
70
+      static_cast<KaxBlock        *>(*Itr)->SetParent(*this);
71
 #if MATROSKA_VERSION >= 2
72
-       } else if (EbmlId(**Itr) == EBML_ID(KaxBlockVirtual)) {
73
-           static_cast<KaxBlockVirtual *>(*Itr)->SetParent(*this);
74
+    } else if (EbmlId(**Itr) == EBML_ID(KaxBlockVirtual)) {
75
+      static_cast<KaxBlockVirtual *>(*Itr)->SetParent(*this);
76
 #endif // MATROSKA_VERSION
77
-       }
78
-        ++Itr;
79
-   }
80
+    }
81
+    ++Itr;
82
+  }
83
 }
84
 
85
 bool KaxCluster::AddBlockBlob(KaxBlockBlob * NewBlob)
86
 {
87
-   Blobs.push_back(NewBlob);
88
-   return true;
89
+  Blobs.push_back(NewBlob);
90
+  return true;
91
 }
92
 
93
 bool KaxCluster::AddFrameInternal(const KaxTrackEntry & track, uint64 timecode, DataBuffer & buffer, KaxBlockGroup * & MyNewBlock, const KaxBlockGroup * PastBlock, const KaxBlockGroup * ForwBlock, LacingType lacing)
94
 {
95
-   if (!bFirstFrameInside) {
96
-       bFirstFrameInside = true;
97
-       MinTimecode = MaxTimecode = timecode;
98
-   } else {
99
-       if (timecode < MinTimecode)
100
-           MinTimecode = timecode;
101
-       if (timecode > MaxTimecode)
102
-           MaxTimecode = timecode;
103
-   }
104
-
105
-   MyNewBlock = NULL;
106
-
107
-   if (lacing == LACING_NONE || !track.LacingEnabled()) {
108
-       currentNewBlock = NULL;
109
-   }
110
-
111
-   // force creation of a new block
112
-   if (currentNewBlock == NULL || uint32(track.TrackNumber()) != uint32(currentNewBlock->TrackNumber()) || PastBlock != NULL || ForwBlock != NULL) {
113
-       KaxBlockGroup & aNewBlock = GetNewBlock();
114
-       MyNewBlock = currentNewBlock = &aNewBlock;
115
-   }
116
-
117
-   if (PastBlock != NULL) {
118
-       if (ForwBlock != NULL) {
119
-           if (currentNewBlock->AddFrame(track, timecode, buffer, *PastBlock, *ForwBlock, lacing)) {
120
-               // more data are allowed in this Block
121
-               return true;
122
-           } else {
123
-               currentNewBlock = NULL;
124
-               return false;
125
-           }
126
-       } else {
127
-           if (currentNewBlock->AddFrame(track, timecode, buffer, *PastBlock, lacing)) {
128
-               // more data are allowed in this Block
129
-               return true;
130
-           } else {
131
-               currentNewBlock = NULL;
132
-               return false;
133
-           }
134
-       }
135
-   } else {
136
-       if (currentNewBlock->AddFrame(track, timecode, buffer, lacing)) {
137
-           // more data are allowed in this Block
138
-           return true;
139
-       } else {
140
-           currentNewBlock = NULL;
141
-           return false;
142
-       }
143
-   }
144
+  if (!bFirstFrameInside) {
145
+    bFirstFrameInside = true;
146
+    MinTimecode = MaxTimecode = timecode;
147
+  } else {
148
+    if (timecode < MinTimecode)
149
+      MinTimecode = timecode;
150
+    if (timecode > MaxTimecode)
151
+      MaxTimecode = timecode;
152
+  }
153
+
154
+  MyNewBlock = NULL;
155
+
156
+  if (lacing == LACING_NONE || !track.LacingEnabled()) {
157
+    currentNewBlock = NULL;
158
+  }
159
+
160
+  // force creation of a new block
161
+  if (currentNewBlock == NULL || uint32(track.TrackNumber()) != uint32(currentNewBlock->TrackNumber()) || PastBlock != NULL || ForwBlock != NULL) {
162
+    KaxBlockGroup & aNewBlock = GetNewBlock();
163
+    MyNewBlock = currentNewBlock = &aNewBlock;
164
+  }
165
+
166
+  if (PastBlock != NULL) {
167
+    if (ForwBlock != NULL) {
168
+      if (currentNewBlock->AddFrame(track, timecode, buffer, *PastBlock, *ForwBlock, lacing)) {
169
+        // more data are allowed in this Block
170
+        return true;
171
+      } else {
172
+        currentNewBlock = NULL;
173
+        return false;
174
+      }
175
+    } else {
176
+      if (currentNewBlock->AddFrame(track, timecode, buffer, *PastBlock, lacing)) {
177
+        // more data are allowed in this Block
178
+        return true;
179
+      } else {
180
+        currentNewBlock = NULL;
181
+        return false;
182
+      }
183
+    }
184
+  } else {
185
+    if (currentNewBlock->AddFrame(track, timecode, buffer, lacing)) {
186
+      // more data are allowed in this Block
187
+      return true;
188
+    } else {
189
+      currentNewBlock = NULL;
190
+      return false;
191
+    }
192
+  }
193
 }
194
 
195
 bool KaxCluster::AddFrame(const KaxTrackEntry & track, uint64 timecode, DataBuffer & buffer, KaxBlockGroup * & MyNewBlock, LacingType lacing)
196
 {
197
-   assert(Blobs.size() == 0); // mutually exclusive for the moment
198
-   return AddFrameInternal(track, timecode, buffer, MyNewBlock, NULL, NULL, lacing);
199
+  assert(Blobs.size() == 0); // mutually exclusive for the moment
200
+  return AddFrameInternal(track, timecode, buffer, MyNewBlock, NULL, NULL, lacing);
201
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxContexts.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxContexts.cpp Changed
38
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxContexts.cpp 640 2004-07-09 21:05:36Z mosu $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxContexts.cpp 640 2004-07-09 21:05:36Z mosu $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #include "ebml/EbmlContexts.h"
28
 #include "ebml/EbmlHead.h"
29
@@ -61,7 +61,7 @@
30
 // for the moment
31
 const EbmlSemanticContext & GetKaxGlobal_Context()
32
 {
33
-   return GetEbmlGlobal_Context();
34
+  return GetEbmlGlobal_Context();
35
 }
36
 
37
 END_LIBMATROSKA_NAMESPACE
38
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxCues.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxCues.cpp Changed
201
 
1
@@ -9,12 +9,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -26,9 +26,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxCues.cpp 1265 2007-01-14 17:20:35Z mosu $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxCues.cpp 1265 2007-01-14 17:20:35Z mosu $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #include <lgpl/cassert>
28
 
29
@@ -44,119 +44,116 @@
30
 
31
 KaxCues::~KaxCues()
32
 {
33
-   assert(myTempReferences.size() == 0); // otherwise that means you have added references and forgot to set the position
34
+  assert(myTempReferences.size() == 0); // otherwise that means you have added references and forgot to set the position
35
 }
36
 /* deprecated and wrong
37
 bool KaxCues::AddBlockGroup(const KaxBlockGroup & BlockRef)
38
 {
39
-   // Do not add the element if it's already present.
40
-   std::vector<const KaxBlockBlob *>::iterator ListIdx;
41
-   KaxBlockBlob *BlockReference = new KaxBlockBlob(BLOCK_BLOB_NO_SIMPLE);
42
-   BlockReference->SetBlockGroup(*const_cast<KaxBlockGroup*>(&BlockRef));
43
-
44
-   for (ListIdx = myTempReferences.begin(); ListIdx != myTempReferences.end(); ListIdx++)
45
-       if (&(KaxBlockGroup&)*ListIdx == &BlockRef)
46
-        {
47
-            delete BlockReference;
48
-           return true;
49
-        }
50
-
51
-   myTempReferences.push_back(BlockReference);
52
-   return true;
53
+  // Do not add the element if it's already present.
54
+  std::vector<const KaxBlockBlob *>::iterator ListIdx;
55
+  KaxBlockBlob *BlockReference = new KaxBlockBlob(BLOCK_BLOB_NO_SIMPLE);
56
+  BlockReference->SetBlockGroup(*const_cast<KaxBlockGroup*>(&BlockRef));
57
+
58
+  for (ListIdx = myTempReferences.begin(); ListIdx != myTempReferences.end(); ListIdx++)
59
+    if (&(KaxBlockGroup&)*ListIdx == &BlockRef) {
60
+      delete BlockReference;
61
+      return true;
62
+    }
63
+
64
+  myTempReferences.push_back(BlockReference);
65
+  return true;
66
 }
67
 */
68
 bool KaxCues::AddBlockBlob(const KaxBlockBlob & BlockReference)
69
 {
70
-   // Do not add the element if it's already present.
71
-   std::vector<const KaxBlockBlob *>::iterator ListIdx;
72
+  // Do not add the element if it's already present.
73
+  std::vector<const KaxBlockBlob *>::iterator ListIdx;
74
 
75
-   for (ListIdx = myTempReferences.begin(); ListIdx != myTempReferences.end(); ++ListIdx)
76
-       if (*ListIdx == &BlockReference)
77
-           return true;
78
+  for (ListIdx = myTempReferences.begin(); ListIdx != myTempReferences.end(); ++ListIdx)
79
+    if (*ListIdx == &BlockReference)
80
+      return true;
81
 
82
-   myTempReferences.push_back(&BlockReference);
83
-   return true;
84
+  myTempReferences.push_back(&BlockReference);
85
+  return true;
86
 }
87
 
88
 void KaxCues::PositionSet(const KaxBlockBlob & BlockReference)
89
 {
90
-   // look for the element in the temporary references
91
-   std::vector<const KaxBlockBlob *>::iterator ListIdx;
92
-
93
-   for (ListIdx = myTempReferences.begin(); ListIdx != myTempReferences.end(); ++ListIdx) {
94
-       if (*ListIdx == &BlockReference) {
95
-           // found, now add the element to the entry list
96
-           KaxCuePoint & NewPoint = AddNewChild<KaxCuePoint>(*this);
97
-           NewPoint.PositionSet(BlockReference, GlobalTimecodeScale());
98
-           myTempReferences.erase(ListIdx);
99
-           break;
100
-       }
101
-   }
102
+  // look for the element in the temporary references
103
+  std::vector<const KaxBlockBlob *>::iterator ListIdx;
104
+
105
+  for (ListIdx = myTempReferences.begin(); ListIdx != myTempReferences.end(); ++ListIdx) {
106
+    if (*ListIdx == &BlockReference) {
107
+      // found, now add the element to the entry list
108
+      KaxCuePoint & NewPoint = AddNewChild<KaxCuePoint>(*this);
109
+      NewPoint.PositionSet(BlockReference, GlobalTimecodeScale());
110
+      myTempReferences.erase(ListIdx);
111
+      break;
112
+    }
113
+  }
114
 }
115
 
116
 void KaxCues::PositionSet(const KaxBlockGroup & BlockRef)
117
 {
118
-   // look for the element in the temporary references
119
-   std::vector<const KaxBlockBlob *>::iterator ListIdx;
120
-
121
-   for (ListIdx = myTempReferences.begin(); ListIdx != myTempReferences.end(); ++ListIdx) {
122
-       const KaxInternalBlock &refTmp = **ListIdx;
123
-       if (refTmp.GlobalTimecode() == BlockRef.GlobalTimecode() &&
124
-           refTmp.TrackNum() == BlockRef.TrackNumber()) {
125
-           // found, now add the element to the entry list
126
-           KaxCuePoint & NewPoint = AddNewChild<KaxCuePoint>(*this);
127
-           NewPoint.PositionSet(**ListIdx, GlobalTimecodeScale());
128
-           myTempReferences.erase(ListIdx);
129
-           break;
130
-       }
131
-   }
132
+  // look for the element in the temporary references
133
+  std::vector<const KaxBlockBlob *>::iterator ListIdx;
134
+
135
+  for (ListIdx = myTempReferences.begin(); ListIdx != myTempReferences.end(); ++ListIdx) {
136
+    const KaxInternalBlock &refTmp = **ListIdx;
137
+    if (refTmp.GlobalTimecode() == BlockRef.GlobalTimecode() &&
138
+        refTmp.TrackNum() == BlockRef.TrackNumber()) {
139
+      // found, now add the element to the entry list
140
+      KaxCuePoint & NewPoint = AddNewChild<KaxCuePoint>(*this);
141
+      NewPoint.PositionSet(**ListIdx, GlobalTimecodeScale());
142
+      myTempReferences.erase(ListIdx);
143
+      break;
144
+    }
145
+  }
146
 }
147
 
148
 /*!
149
-   \warning Assume that the list has been sorted (Sort())
150
+  \warning Assume that the list has been sorted (Sort())
151
 */
152
 const KaxCuePoint * KaxCues::GetTimecodePoint(uint64 aTimecode) const
153
 {
154
-   uint64 TimecodeToLocate = aTimecode / GlobalTimecodeScale();
155
-   const KaxCuePoint * aPointPrev = NULL;
156
-   uint64 aPrevTime = 0;
157
-   uint64 aNextTime = EBML_PRETTYLONGINT(0xFFFFFFFFFFFF);
158
-
159
-    EBML_MASTER_CONST_ITERATOR Itr;
160
-   for (Itr = begin(); Itr != end(); ++Itr)
161
-    {
162
-       if (EbmlId(*(*Itr)) == EBML_ID(KaxCuePoint)) {
163
-           const KaxCuePoint *tmp = static_cast<const KaxCuePoint *>(*Itr);
164
-           // check the tile
165
-           const KaxCueTime *aTime = static_cast<const KaxCueTime *>(tmp->FindFirstElt(EBML_INFO(KaxCueTime)));
166
-           if (aTime != NULL)
167
-           {
168
-               uint64 _Time = uint64(*aTime);
169
-               if (_Time > aPrevTime && _Time < TimecodeToLocate) {
170
-                   aPrevTime = _Time;
171
-                   aPointPrev = tmp;
172
-               }
173
-               if (_Time < aNextTime && _Time > TimecodeToLocate) {
174
-                   aNextTime= _Time;
175
-               }
176
-           }
177
-       }
178
-   }
179
-
180
-   return aPointPrev;
181
+  uint64 TimecodeToLocate = aTimecode / GlobalTimecodeScale();
182
+  const KaxCuePoint * aPointPrev = NULL;
183
+  uint64 aPrevTime = 0;
184
+  uint64 aNextTime = EBML_PRETTYLONGINT(0xFFFFFFFFFFFF);
185
+
186
+  EBML_MASTER_CONST_ITERATOR Itr;
187
+  for (Itr = begin(); Itr != end(); ++Itr) {
188
+    if (EbmlId(*(*Itr)) == EBML_ID(KaxCuePoint)) {
189
+      const KaxCuePoint *tmp = static_cast<const KaxCuePoint *>(*Itr);
190
+      // check the tile
191
+      const KaxCueTime *aTime = static_cast<const KaxCueTime *>(tmp->FindFirstElt(EBML_INFO(KaxCueTime)));
192
+      if (aTime != NULL) {
193
+        uint64 _Time = uint64(*aTime);
194
+        if (_Time > aPrevTime && _Time < TimecodeToLocate) {
195
+          aPrevTime = _Time;
196
+          aPointPrev = tmp;
197
+        }
198
+        if (_Time < aNextTime && _Time > TimecodeToLocate) {
199
+          aNextTime= _Time;
200
+        }
201
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxCuesData.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxCuesData.cpp Changed
201
 
1
@@ -9,12 +9,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -26,9 +26,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxCuesData.cpp 1265 2007-01-14 17:20:35Z mosu $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxCuesData.cpp 1265 2007-01-14 17:20:35Z mosu $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #include <lgpl/cassert>
28
 
29
@@ -44,211 +44,206 @@
30
 START_LIBMATROSKA_NAMESPACE
31
 
32
 /*!
33
-   \todo handle codec state checking
34
-   \todo remove duplicate references (reference to 2 frames that each reference the same frame)
35
+  \todo handle codec state checking
36
+  \todo remove duplicate references (reference to 2 frames that each reference the same frame)
37
 */
38
 void KaxCuePoint::PositionSet(const KaxBlockGroup & BlockReference, uint64 GlobalTimecodeScale)
39
 {
40
-   // fill me
41
-   KaxCueTime & NewTime = GetChild<KaxCueTime>(*this);
42
-   *static_cast<EbmlUInteger*>(&NewTime) = BlockReference.GlobalTimecode() / GlobalTimecodeScale;
43
+  // fill me
44
+  KaxCueTime & NewTime = GetChild<KaxCueTime>(*this);
45
+  *static_cast<EbmlUInteger*>(&NewTime) = BlockReference.GlobalTimecode() / GlobalTimecodeScale;
46
+
47
+  KaxCueTrackPositions & NewPositions = AddNewChild<KaxCueTrackPositions>(*this);
48
+  KaxCueTrack & TheTrack = GetChild<KaxCueTrack>(NewPositions);
49
+  *static_cast<EbmlUInteger*>(&TheTrack) = BlockReference.TrackNumber();
50
 
51
-   KaxCueTrackPositions & NewPositions = AddNewChild<KaxCueTrackPositions>(*this);
52
-   KaxCueTrack & TheTrack = GetChild<KaxCueTrack>(NewPositions);
53
-   *static_cast<EbmlUInteger*>(&TheTrack) = BlockReference.TrackNumber();
54
-   
55
-   KaxCueClusterPosition & TheClustPos = GetChild<KaxCueClusterPosition>(NewPositions);
56
-   *static_cast<EbmlUInteger*>(&TheClustPos) = BlockReference.ClusterPosition();
57
+  KaxCueClusterPosition & TheClustPos = GetChild<KaxCueClusterPosition>(NewPositions);
58
+  *static_cast<EbmlUInteger*>(&TheClustPos) = BlockReference.ClusterPosition();
59
 
60
 #if MATROSKA_VERSION >= 2
61
-   // handle reference use
62
-   if (BlockReference.ReferenceCount() != 0)
63
-   {
64
-       unsigned int i;
65
-       for (i=0; i<BlockReference.ReferenceCount(); i++) {
66
-           KaxCueReference & NewRefs = AddNewChild<KaxCueReference>(NewPositions);
67
-           NewRefs.AddReference(BlockReference.Reference(i).RefBlock(), GlobalTimecodeScale);
68
-       }
69
-   }
70
-
71
-   KaxCodecState *CodecState = static_cast<KaxCodecState *>(BlockReference.FindFirstElt(EBML_INFO(KaxCodecState)));
72
-   if (CodecState != NULL) {
73
-       KaxCueCodecState &CueCodecState = AddNewChild<KaxCueCodecState>(NewPositions);
74
-       *static_cast<EbmlUInteger*>(&CueCodecState) = BlockReference.GetParentCluster()->GetParentSegment()->GetRelativePosition(CodecState->GetElementPosition());
75
-   }
76
+  // handle reference use
77
+  if (BlockReference.ReferenceCount() != 0) {
78
+    unsigned int i;
79
+    for (i=0; i<BlockReference.ReferenceCount(); i++) {
80
+      KaxCueReference & NewRefs = AddNewChild<KaxCueReference>(NewPositions);
81
+      NewRefs.AddReference(BlockReference.Reference(i).RefBlock(), GlobalTimecodeScale);
82
+    }
83
+  }
84
+
85
+  KaxCodecState *CodecState = static_cast<KaxCodecState *>(BlockReference.FindFirstElt(EBML_INFO(KaxCodecState)));
86
+  if (CodecState != NULL) {
87
+    KaxCueCodecState &CueCodecState = AddNewChild<KaxCueCodecState>(NewPositions);
88
+    *static_cast<EbmlUInteger*>(&CueCodecState) = BlockReference.GetParentCluster()->GetParentSegment()->GetRelativePosition(CodecState->GetElementPosition());
89
+  }
90
 #endif // MATROSKA_VERSION
91
 
92
-   SetValueIsSet();
93
+  SetValueIsSet();
94
 }
95
 
96
 void KaxCuePoint::PositionSet(const KaxBlockBlob & BlobReference, uint64 GlobalTimecodeScale)
97
 {
98
-   const KaxInternalBlock &BlockReference = BlobReference;
99
-   const KaxBlockGroup* BlockGroupPointer = NULL;
100
-
101
-   if (!BlobReference.IsSimpleBlock()) {
102
-       const KaxBlockGroup &BlockGroup = BlobReference;
103
-       BlockGroupPointer = & BlockGroup;
104
-   }
105
-   PositionSet(BlockReference,BlockGroupPointer,GlobalTimecodeScale);
106
+  const KaxInternalBlock &BlockReference = BlobReference;
107
+  const KaxBlockGroup* BlockGroupPointer = NULL;
108
+
109
+  if (!BlobReference.IsSimpleBlock()) {
110
+    const KaxBlockGroup &BlockGroup = BlobReference;
111
+    BlockGroupPointer = & BlockGroup;
112
+  }
113
+  PositionSet(BlockReference,BlockGroupPointer,GlobalTimecodeScale);
114
 }
115
 
116
 void KaxCuePoint::PositionSet(const KaxSimpleBlock & BlockReference, uint64 GlobalTimecodeScale)
117
 {
118
-   PositionSet(BlockReference,NULL,GlobalTimecodeScale);
119
+  PositionSet(BlockReference,NULL,GlobalTimecodeScale);
120
 }
121
 
122
 void KaxCuePoint::PositionSet(const KaxInternalBlock & BlockReference, const KaxBlockGroup* BlockGroup, uint64 GlobalTimecodeScale)
123
 {
124
-   // fill me
125
-   KaxCueTime & NewTime = GetChild<KaxCueTime>(*this);
126
-   *static_cast<EbmlUInteger*>(&NewTime) = BlockReference.GlobalTimecode() / GlobalTimecodeScale;
127
+  // fill me
128
+  KaxCueTime & NewTime = GetChild<KaxCueTime>(*this);
129
+  *static_cast<EbmlUInteger*>(&NewTime) = BlockReference.GlobalTimecode() / GlobalTimecodeScale;
130
+  KaxCueTrackPositions & NewPositions = AddNewChild<KaxCueTrackPositions>(*this);
131
+  KaxCueTrack & TheTrack = GetChild<KaxCueTrack>(NewPositions);
132
+  *static_cast<EbmlUInteger*>(&TheTrack) = BlockReference.TrackNum();
133
 
134
-   KaxCueTrackPositions & NewPositions = AddNewChild<KaxCueTrackPositions>(*this);
135
-   KaxCueTrack & TheTrack = GetChild<KaxCueTrack>(NewPositions);
136
-   *static_cast<EbmlUInteger*>(&TheTrack) = BlockReference.TrackNum();
137
-   
138
-   KaxCueClusterPosition & TheClustPos = GetChild<KaxCueClusterPosition>(NewPositions);
139
-   *static_cast<EbmlUInteger*>(&TheClustPos) = BlockReference.ClusterPosition();
140
+  KaxCueClusterPosition & TheClustPos = GetChild<KaxCueClusterPosition>(NewPositions);
141
+  *static_cast<EbmlUInteger*>(&TheClustPos) = BlockReference.ClusterPosition();
142
 
143
 #if 0 // MATROSKA_VERSION >= 2
144
-   // handle reference use
145
-   if (BlockReference.ReferenceCount() != 0)
146
-   {
147
-       unsigned int i;
148
-       for (i=0; i<BlockReference.ReferenceCount(); i++) {
149
-           KaxCueReference & NewRefs = AddNewChild<KaxCueReference>(NewPositions);
150
-           NewRefs.AddReference(BlockReference.Reference(i).RefBlock(), GlobalTimecodeScale);
151
-       }
152
-   }
153
+  // handle reference use
154
+  if (BlockReference.ReferenceCount() != 0) {
155
+    unsigned int i;
156
+    for (i=0; i<BlockReference.ReferenceCount(); i++) {
157
+      KaxCueReference & NewRefs = AddNewChild<KaxCueReference>(NewPositions);
158
+      NewRefs.AddReference(BlockReference.Reference(i).RefBlock(), GlobalTimecodeScale);
159
+    }
160
+  }
161
 #endif // MATROSKA_VERSION
162
 
163
 #if MATROSKA_VERSION >= 2
164
-   if (BlockGroup!=NULL) {
165
-       const KaxCodecState *CodecState = static_cast<KaxCodecState *>(BlockGroup->FindFirstElt(EBML_INFO(KaxCodecState)));
166
-       if (CodecState != NULL) {
167
-           KaxCueCodecState &CueCodecState = AddNewChild<KaxCueCodecState>(NewPositions);
168
-           *static_cast<EbmlUInteger*>(&CueCodecState) = BlockGroup->GetParentCluster()->GetParentSegment()->GetRelativePosition(CodecState->GetElementPosition());
169
-       }
170
-   }
171
+  if (BlockGroup!=NULL) {
172
+    const KaxCodecState *CodecState = static_cast<KaxCodecState *>(BlockGroup->FindFirstElt(EBML_INFO(KaxCodecState)));
173
+    if (CodecState != NULL) {
174
+      KaxCueCodecState &CueCodecState = AddNewChild<KaxCueCodecState>(NewPositions);
175
+      *static_cast<EbmlUInteger*>(&CueCodecState) = BlockGroup->GetParentCluster()->GetParentSegment()->GetRelativePosition(CodecState->GetElementPosition());
176
+    }
177
+  }
178
 #endif // MATROSKA_VERSION
179
 
180
-   SetValueIsSet();
181
+  SetValueIsSet();
182
 }
183
 
184
 #if MATROSKA_VERSION >= 2
185
 /*!
186
-   \todo handle codec state checking
187
+  \todo handle codec state checking
188
 */
189
 void KaxCueReference::AddReference(const KaxBlockBlob & BlockReference, uint64 GlobalTimecodeScale)
190
 {
191
-   const KaxInternalBlock & theBlock = BlockReference;
192
-   KaxCueRefTime & NewTime = GetChild<KaxCueRefTime>(*this);
193
-   *static_cast<EbmlUInteger*>(&NewTime) = theBlock.GlobalTimecode() / GlobalTimecodeScale;
194
+  const KaxInternalBlock & theBlock = BlockReference;
195
+  KaxCueRefTime & NewTime = GetChild<KaxCueRefTime>(*this);
196
+  *static_cast<EbmlUInteger*>(&NewTime) = theBlock.GlobalTimecode() / GlobalTimecodeScale;
197
 
198
-   KaxCueRefCluster & TheClustPos = GetChild<KaxCueRefCluster>(*this);
199
-   *static_cast<EbmlUInteger*>(&TheClustPos) = theBlock.ClusterPosition();
200
+  KaxCueRefCluster & TheClustPos = GetChild<KaxCueRefCluster>(*this);
201
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxInfoData.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxInfoData.cpp Changed
53
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,10 +28,10 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id$
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
-   \author John Cannon      <spyder2555 @ users.sf.net>
24
+  \file
25
+  \version \$Id$
26
+  \author Steve Lhomme     <robux4 @ users.sf.net>
27
+  \author John Cannon      <spyder2555 @ users.sf.net>
28
 */
29
 #include "matroska/KaxInfoData.h"
30
 #include "matroska/KaxContexts.h"
31
@@ -41,18 +41,18 @@
32
 START_LIBMATROSKA_NAMESPACE
33
 
34
 KaxPrevUID::KaxPrevUID(EBML_EXTRA_DEF)
35
-:KaxSegmentUID(EBML_DEF_BINARY_CTX(KaxPrevUID) EBML_DEF_SEP EBML_EXTRA_CALL)
36
+  :KaxSegmentUID(EBML_DEF_BINARY_CTX(KaxPrevUID) EBML_DEF_SEP EBML_EXTRA_CALL)
37
 {
38
 }
39
 
40
 KaxNextUID::KaxNextUID(EBML_EXTRA_DEF)
41
-:KaxSegmentUID(EBML_DEF_BINARY_CTX(KaxNextUID) EBML_DEF_SEP EBML_EXTRA_CALL)
42
+  :KaxSegmentUID(EBML_DEF_BINARY_CTX(KaxNextUID) EBML_DEF_SEP EBML_EXTRA_CALL)
43
 {
44
 }
45
 
46
 #if defined(HAVE_EBML2) || defined(HAS_EBML2)
47
 KaxSegmentUID::KaxSegmentUID(EBML_DEF_CONS EBML_DEF_SEP EBML_EXTRA_DEF)
48
-:EbmlBinary(EBML_DEF_PARAM EBML_DEF_SEP EBML_EXTRA_CALL)
49
+  :EbmlBinary(EBML_DEF_PARAM EBML_DEF_SEP EBML_EXTRA_CALL)
50
 {
51
 }
52
 #endif
53
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxSeekHead.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxSeekHead.cpp Changed
201
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxSeekHead.cpp 640 2004-07-09 21:05:36Z mosu $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxSeekHead.cpp 640 2004-07-09 21:05:36Z mosu $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #include "matroska/KaxSeekHead.h"
28
 #include "matroska/KaxContexts.h"
29
@@ -44,107 +44,100 @@
30
 START_LIBMATROSKA_NAMESPACE
31
 
32
 /*!
33
-   \todo verify that the element is not already in the list
34
+  \todo verify that the element is not already in the list
35
 */
36
 KaxSeek * KaxSeekHead::IndexThis(const EbmlElement & aElt, const KaxSegment & ParentSegment)
37
 {
38
-   // create a new point
39
-   KaxSeek & aNewPoint = AddNewChild<KaxSeek>(*this);
40
-
41
-   // add the informations to this element
42
-   KaxSeekPosition & aNewPos = GetChild<KaxSeekPosition>(aNewPoint);
43
-   *static_cast<EbmlUInteger *>(&aNewPos) = ParentSegment.GetRelativePosition(aElt);
44
-
45
-   KaxSeekID & aNewID = GetChild<KaxSeekID>(aNewPoint);
46
-   binary ID[4];
47
-    ((const EbmlId&)aElt).Fill(ID);
48
-   aNewID.CopyBuffer(ID, EBML_ID_LENGTH((const EbmlId&)aElt));
49
-    return &aNewPoint;
50
+  // create a new point
51
+  KaxSeek & aNewPoint = AddNewChild<KaxSeek>(*this);
52
+
53
+  // add the informations to this element
54
+  KaxSeekPosition & aNewPos = GetChild<KaxSeekPosition>(aNewPoint);
55
+  *static_cast<EbmlUInteger *>(&aNewPos) = ParentSegment.GetRelativePosition(aElt);
56
+
57
+  KaxSeekID & aNewID = GetChild<KaxSeekID>(aNewPoint);
58
+  binary ID[4];
59
+  ((const EbmlId&)aElt).Fill(ID);
60
+  aNewID.CopyBuffer(ID, EBML_ID_LENGTH((const EbmlId&)aElt));
61
+  return &aNewPoint;
62
 }
63
 
64
 KaxSeek * KaxSeekHead::FindFirstOf(const EbmlCallbacks & Callbacks) const
65
 {
66
-   // parse all the Entries and find the first to match the type
67
-   KaxSeek * aElt = static_cast<KaxSeek *>(FindFirstElt(EBML_INFO(KaxSeek)));
68
-   while (aElt != NULL)
69
-   {
70
-       KaxSeekID * aId = NULL;
71
-        EBML_MASTER_ITERATOR Itr;
72
-       for (Itr = aElt->begin(); Itr != aElt->end(); ++Itr)
73
-        {
74
-           if (EbmlId(*(*Itr)) == EBML_ID(KaxSeekID)) {
75
-               aId = static_cast<KaxSeekID*>(*Itr);
76
-               EbmlId aEbmlId(aId->GetBuffer(), (unsigned int) aId->GetSize());
77
-               if (aEbmlId == EBML_INFO_ID(Callbacks))
78
-               {
79
-                   return aElt;
80
-               }
81
-               break;
82
-           }
83
-       }
84
-       aElt = static_cast<KaxSeek *>(FindNextElt(*aElt));
85
-   }
86
-
87
-   return NULL;
88
+  // parse all the Entries and find the first to match the type
89
+  KaxSeek * aElt = static_cast<KaxSeek *>(FindFirstElt(EBML_INFO(KaxSeek)));
90
+  while (aElt != NULL) {
91
+    KaxSeekID * aId = NULL;
92
+    EBML_MASTER_ITERATOR Itr;
93
+    for (Itr = aElt->begin(); Itr != aElt->end(); ++Itr) {
94
+      if (EbmlId(*(*Itr)) == EBML_ID(KaxSeekID)) {
95
+        aId = static_cast<KaxSeekID*>(*Itr);
96
+        EbmlId aEbmlId(aId->GetBuffer(), (unsigned int)aId->GetSize());
97
+        if (aEbmlId == EBML_INFO_ID(Callbacks)) {
98
+          return aElt;
99
+        }
100
+        break;
101
+      }
102
+    }
103
+    aElt = static_cast<KaxSeek *>(FindNextElt(*aElt));
104
+  }
105
+
106
+  return NULL;
107
 }
108
 
109
 KaxSeek * KaxSeekHead::FindNextOf(const KaxSeek &aPrev) const
110
 {
111
-    EBML_MASTER_CONST_ITERATOR Itr;
112
-   KaxSeek *tmp;
113
-   
114
-   // look for the previous in the list
115
-   for (Itr = begin(); Itr != end(); ++Itr)
116
-    {
117
-       if (*Itr == static_cast<const EbmlElement*>(&aPrev))
118
-           break;
119
-   }
120
-
121
-   if (Itr != end())
122
-    {
123
-       ++Itr;
124
-       for (; Itr != end(); ++Itr)
125
-        {
126
-           if (EbmlId(*(*Itr)) == EBML_ID(KaxSeek))
127
-           {
128
-               tmp = (KaxSeek *)(*Itr);
129
-               if (tmp->IsEbmlId(aPrev))
130
-                   return tmp;
131
-           }
132
-       }
133
-   }
134
-
135
-   return NULL;
136
+  EBML_MASTER_CONST_ITERATOR Itr;
137
+  KaxSeek *tmp;
138
+
139
+  // look for the previous in the list
140
+  for (Itr = begin(); Itr != end(); ++Itr) {
141
+    if (*Itr == static_cast<const EbmlElement*>(&aPrev))
142
+      break;
143
+  }
144
+
145
+  if (Itr != end()) {
146
+    ++Itr;
147
+    for (; Itr != end(); ++Itr) {
148
+      if (EbmlId(*(*Itr)) == EBML_ID(KaxSeek)) {
149
+        tmp = (KaxSeek *)(*Itr);
150
+        if (tmp->IsEbmlId(aPrev))
151
+          return tmp;
152
+      }
153
+    }
154
+  }
155
+
156
+  return NULL;
157
 }
158
 
159
 int64 KaxSeek::Location() const
160
 {
161
-   KaxSeekPosition *aPos = static_cast<KaxSeekPosition*>(FindFirstElt(EBML_INFO(KaxSeekPosition)));
162
-   if (aPos == NULL)
163
-       return 0;
164
-   return uint64(*aPos);
165
+  KaxSeekPosition *aPos = static_cast<KaxSeekPosition*>(FindFirstElt(EBML_INFO(KaxSeekPosition)));
166
+  if (aPos == NULL)
167
+    return 0;
168
+  return uint64(*aPos);
169
 }
170
 
171
 bool KaxSeek::IsEbmlId(const EbmlId & aId) const
172
 {
173
-   KaxSeekID *_Id = static_cast<KaxSeekID*>(FindFirstElt(EBML_INFO(KaxSeekID)));
174
-   if (_Id == NULL)
175
-       return false;
176
-   EbmlId aEbmlId(_Id->GetBuffer(), (unsigned int) _Id->GetSize());
177
-   return (aId == aEbmlId);
178
+  KaxSeekID *_Id = static_cast<KaxSeekID*>(FindFirstElt(EBML_INFO(KaxSeekID)));
179
+  if (_Id == NULL)
180
+    return false;
181
+  EbmlId aEbmlId(_Id->GetBuffer(), (unsigned int)_Id->GetSize());
182
+  return (aId == aEbmlId);
183
 }
184
 
185
 bool KaxSeek::IsEbmlId(const KaxSeek & aPoint) const
186
 {
187
-   KaxSeekID *_IdA = static_cast<KaxSeekID*>(FindFirstElt(EBML_INFO(KaxSeekID)));
188
-   if (_IdA == NULL)
189
-       return false;
190
-   KaxSeekID *_IdB = static_cast<KaxSeekID*>(aPoint.FindFirstElt(EBML_INFO(KaxSeekID)));
191
-   if (_IdB == NULL)
192
-       return false;
193
-   EbmlId aEbmlIdA(_IdA->GetBuffer(), _IdA->GetSize());
194
-   EbmlId aEbmlIdB(_IdB->GetBuffer(), _IdB->GetSize());
195
-   return (aEbmlIdA == aEbmlIdB);
196
+  KaxSeekID *_IdA = static_cast<KaxSeekID*>(FindFirstElt(EBML_INFO(KaxSeekID)));
197
+  if (_IdA == NULL)
198
+    return false;
199
+  KaxSeekID *_IdB = static_cast<KaxSeekID*>(aPoint.FindFirstElt(EBML_INFO(KaxSeekID)));
200
+  if (_IdB == NULL)
201
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxSegment.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxSegment.cpp Changed
85
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxSegment.cpp 1096 2005-03-17 09:14:52Z robux4 $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxSegment.cpp 1096 2005-03-17 09:14:52Z robux4 $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #include "matroska/KaxSegment.h"
28
 #include "ebml/EbmlHead.h"
29
@@ -46,40 +46,39 @@
30
 START_LIBMATROSKA_NAMESPACE
31
 
32
 KaxSegment::KaxSegment(EBML_EXTRA_DEF)
33
-   :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxSegment) EBML_DEF_SEP EBML_EXTRA_CALL)
34
+  :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxSegment) EBML_DEF_SEP EBML_EXTRA_CALL)
35
 {
36
-   SetSizeLength(5); // mandatory min size support (for easier updating) (2^(7*5)-2 = 32Go)
37
-   SetSizeInfinite(); // by default a segment is big and the size is unknown in advance
38
+  SetSizeLength(5); // mandatory min size support (for easier updating) (2^(7*5)-2 = 32Go)
39
+  SetSizeInfinite(); // by default a segment is big and the size is unknown in advance
40
 }
41
 
42
 KaxSegment::KaxSegment(const KaxSegment & ElementToClone)
43
- :EbmlMaster(ElementToClone)
44
+  :EbmlMaster(ElementToClone)
45
 {
46
-   // update the parent of each children
47
-   EBML_MASTER_ITERATOR Itr = begin();
48
-   while (Itr != end())
49
-   {
50
-       if (EbmlId(**Itr) == EBML_ID(KaxCluster)) {
51
-           static_cast<KaxCluster *>(*Itr)->SetParent(*this);
52
-       }
53
-        ++Itr;
54
-   }
55
+  // update the parent of each children
56
+  EBML_MASTER_ITERATOR Itr = begin();
57
+  while (Itr != end()) {
58
+    if (EbmlId(**Itr) == EBML_ID(KaxCluster)) {
59
+      static_cast<KaxCluster *>(*Itr)->SetParent(*this);
60
+    }
61
+    ++Itr;
62
+  }
63
 }
64
 
65
 
66
 uint64 KaxSegment::GetRelativePosition(uint64 aGlobalPosition) const
67
 {
68
-   return aGlobalPosition - GetElementPosition() - HeadSize();
69
+  return aGlobalPosition - GetElementPosition() - HeadSize();
70
 }
71
 
72
 uint64 KaxSegment::GetRelativePosition(const EbmlElement & Elt) const
73
 {
74
-   return GetRelativePosition(Elt.GetElementPosition());
75
+  return GetRelativePosition(Elt.GetElementPosition());
76
 }
77
 
78
 uint64 KaxSegment::GetGlobalPosition(uint64 aRelativePosition) const
79
 {
80
-   return aRelativePosition + GetElementPosition() + HeadSize();
81
+  return aRelativePosition + GetElementPosition() + HeadSize();
82
 }
83
 
84
 END_LIBMATROSKA_NAMESPACE
85
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxSemantic.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxSemantic.cpp Changed
174
 
1
@@ -1,23 +1,23 @@
2
 /**********************************************************************
3
 **  DO NOT EDIT, GENERATED WITH DATA2LIB
4
-** 
5
+**
6
 **  libmatroska : parse Matroska files, see http://www.matroska.org/
7
-** 
8
+**
9
 **  Copyright (c) 2002-2010, Matroska (non-profit organisation)
10
 **  All rights reserved.
11
-** 
12
+**
13
 ** This file is part of libmatroska.
14
 **
15
 ** This library is free software; you can redistribute it and/or
16
 ** modify it under the terms of the GNU Lesser General Public
17
 ** License as published by the Free Software Foundation; either
18
 ** version 2.1 of the License, or (at your option) any later version.
19
-** 
20
+**
21
 ** This library is distributed in the hope that it will be useful,
22
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
23
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
24
 ** Lesser General Public License for more details.
25
-** 
26
+**
27
 ** You should have received a copy of the GNU Lesser General Public
28
 ** License along with this library; if not, write to the Free Software
29
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
30
@@ -699,103 +699,103 @@
31
 DEFINE_MKX_BINARY (KaxTagBinary, 0x4485, 2, KaxTagSimple, "TagBinary");
32
 
33
 filepos_t KaxBlockVirtual::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
34
-   assert(false); // no you are not allowed to use this element !
35
-   return 0;
36
+  assert(false); // no you are not allowed to use this element !
37
+  return 0;
38
 }
39
 
40
 filepos_t KaxReferenceVirtual::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
41
-   assert(false); // no you are not allowed to use this element !
42
-   return 0;
43
+  assert(false); // no you are not allowed to use this element !
44
+  return 0;
45
 }
46
 
47
 filepos_t KaxSliceFrameNumber::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
48
-   assert(false); // no you are not allowed to use this element !
49
-   return 0;
50
+  assert(false); // no you are not allowed to use this element !
51
+  return 0;
52
 }
53
 
54
 filepos_t KaxSliceBlockAddID::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
55
-   assert(false); // no you are not allowed to use this element !
56
-   return 0;
57
+  assert(false); // no you are not allowed to use this element !
58
+  return 0;
59
 }
60
 
61
 filepos_t KaxSliceDelay::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
62
-   assert(false); // no you are not allowed to use this element !
63
-   return 0;
64
+  assert(false); // no you are not allowed to use this element !
65
+  return 0;
66
 }
67
 
68
 filepos_t KaxSliceDuration::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
69
-   assert(false); // no you are not allowed to use this element !
70
-   return 0;
71
+  assert(false); // no you are not allowed to use this element !
72
+  return 0;
73
 }
74
 
75
 filepos_t KaxEncryptedBlock::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
76
-   assert(false); // no you are not allowed to use this element !
77
-   return 0;
78
+  assert(false); // no you are not allowed to use this element !
79
+  return 0;
80
 }
81
 
82
 filepos_t KaxTrackTimecodeScale::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
83
-   assert(false); // no you are not allowed to use this element !
84
-   return 0;
85
+  assert(false); // no you are not allowed to use this element !
86
+  return 0;
87
 }
88
 
89
 filepos_t KaxTrackOffset::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
90
-   assert(false); // no you are not allowed to use this element !
91
-   return 0;
92
+  assert(false); // no you are not allowed to use this element !
93
+  return 0;
94
 }
95
 
96
 filepos_t KaxCodecSettings::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
97
-   assert(false); // no you are not allowed to use this element !
98
-   return 0;
99
+  assert(false); // no you are not allowed to use this element !
100
+  return 0;
101
 }
102
 
103
 filepos_t KaxCodecInfoURL::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
104
-   assert(false); // no you are not allowed to use this element !
105
-   return 0;
106
+  assert(false); // no you are not allowed to use this element !
107
+  return 0;
108
 }
109
 
110
 filepos_t KaxCodecDownloadURL::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
111
-   assert(false); // no you are not allowed to use this element !
112
-   return 0;
113
+  assert(false); // no you are not allowed to use this element !
114
+  return 0;
115
 }
116
 
117
 filepos_t KaxOldStereoMode::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
118
-   assert(false); // no you are not allowed to use this element !
119
-   return 0;
120
+  assert(false); // no you are not allowed to use this element !
121
+  return 0;
122
 }
123
 
124
 filepos_t KaxVideoGamma::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
125
-   assert(false); // no you are not allowed to use this element !
126
-   return 0;
127
+  assert(false); // no you are not allowed to use this element !
128
+  return 0;
129
 }
130
 
131
 filepos_t KaxVideoFrameRate::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
132
-   assert(false); // no you are not allowed to use this element !
133
-   return 0;
134
+  assert(false); // no you are not allowed to use this element !
135
+  return 0;
136
 }
137
 
138
 filepos_t KaxAudioPosition::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
139
-   assert(false); // no you are not allowed to use this element !
140
-   return 0;
141
+  assert(false); // no you are not allowed to use this element !
142
+  return 0;
143
 }
144
 
145
 filepos_t KaxCueRefCluster::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
146
-   assert(false); // no you are not allowed to use this element !
147
-   return 0;
148
+  assert(false); // no you are not allowed to use this element !
149
+  return 0;
150
 }
151
 
152
 filepos_t KaxCueRefNumber::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
153
-   assert(false); // no you are not allowed to use this element !
154
-   return 0;
155
+  assert(false); // no you are not allowed to use this element !
156
+  return 0;
157
 }
158
 
159
 filepos_t KaxCueRefCodecState::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
160
-   assert(false); // no you are not allowed to use this element !
161
-   return 0;
162
+  assert(false); // no you are not allowed to use this element !
163
+  return 0;
164
 }
165
 
166
 filepos_t KaxFileReferral::RenderData(IOCallback & /* output */, bool /* bForceRender */, bool /* bSaveDefault */) {
167
-   assert(false); // no you are not allowed to use this element !
168
-   return 0;
169
+  assert(false); // no you are not allowed to use this element !
170
+  return 0;
171
 }
172
 
173
 END_LIBMATROSKA_NAMESPACE
174
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxTracks.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxTracks.cpp Changed
48
 
1
@@ -11,12 +11,12 @@
2
 ** modify it under the terms of the GNU Lesser General Public
3
 ** License as published by the Free Software Foundation; either
4
 ** version 2.1 of the License, or (at your option) any later version.
5
-** 
6
+**
7
 ** This library is distributed in the hope that it will be useful,
8
 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
9
 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
10
 ** Lesser General Public License for more details.
11
-** 
12
+**
13
 ** You should have received a copy of the GNU Lesser General Public
14
 ** License along with this library; if not, write to the Free Software
15
 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
16
@@ -28,9 +28,9 @@
17
 **********************************************************************/
18
 
19
 /*!
20
-   \file
21
-   \version \$Id: KaxTracks.cpp 1202 2005-08-30 14:39:01Z robux4 $
22
-   \author Steve Lhomme     <robux4 @ users.sf.net>
23
+  \file
24
+  \version \$Id: KaxTracks.cpp 1202 2005-08-30 14:39:01Z robux4 $
25
+  \author Steve Lhomme     <robux4 @ users.sf.net>
26
 */
27
 #include "matroska/KaxTracks.h"
28
 
29
@@ -41,14 +41,14 @@
30
 START_LIBMATROSKA_NAMESPACE
31
 
32
 KaxTrackEntry::KaxTrackEntry(EBML_EXTRA_DEF)
33
-   :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxTrackEntry) EBML_DEF_SEP EBML_EXTRA_CALL)
34
-   ,bGlobalTimecodeScaleIsSet(false)
35
+  :EbmlMaster(EBML_CLASS_SEMCONTEXT(KaxTrackEntry) EBML_DEF_SEP EBML_EXTRA_CALL)
36
+  ,bGlobalTimecodeScaleIsSet(false)
37
 {}
38
 
39
 void KaxTrackEntry::EnableLacing(bool bEnable)
40
 {
41
-   KaxTrackFlagLacing & myLacing = GetChild<KaxTrackFlagLacing>(*this);
42
-   *(static_cast<EbmlUInteger *>(&myLacing)) = bEnable ? 1 : 0;
43
+  KaxTrackFlagLacing & myLacing = GetChild<KaxTrackFlagLacing>(*this);
44
+  *(static_cast<EbmlUInteger *>(&myLacing)) = bEnable ? 1 : 0;
45
 }
46
 
47
 END_LIBMATROSKA_NAMESPACE
48
makemkv-oss-1.9.5.tar.xz/libmatroska/src/KaxVersion.cpp -> makemkv-oss-1.10.2.tar.xz/libmatroska/src/KaxVersion.cpp Changed
21
 
1
@@ -28,15 +28,15 @@
2
 **********************************************************************/
3
 
4
 /*!
5
-   \file
6
-   \version \$Id: KaxVersion.cpp 640 2004-07-09 21:05:36Z mosu $
7
-   \author Steve Lhomme     <robux4 @ users.sf.net>
8
+  \file
9
+  \version \$Id: KaxVersion.cpp 640 2004-07-09 21:05:36Z mosu $
10
+  \author Steve Lhomme     <robux4 @ users.sf.net>
11
 */
12
 
13
 #include "matroska/KaxVersion.h"
14
 
15
 START_LIBMATROSKA_NAMESPACE
16
 
17
-const ccc::string KaxCodeVersion = "1.4.1";
18
+const ccc::string KaxCodeVersion = "1.4.4";
19
 
20
 END_LIBMATROSKA_NAMESPACE
21
makemkv-oss-1.9.5.tar.xz/libmmbd/inc/libmmbd/mmbd.h -> makemkv-oss-1.10.2.tar.xz/libmmbd/inc/libmmbd/mmbd.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/aacs.cpp -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/aacs.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/bdplus.cpp -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/bdplus.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/bdplus.h -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/bdplus.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/crypto.h -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/crypto.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/crypto_ossl.cpp -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/crypto_ossl.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/marmmbd.cpp -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/marmmbd.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/mmbd.cpp -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/mmbd.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/mmbdipc.cpp -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/mmbdipc.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/mmbdipc.h -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/mmbdipc.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/mmconn.cpp -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/mmconn.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/mmconn.h -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/mmconn.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/nstring.cpp -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/nstring.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/utf8.cpp -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/utf8.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/libmmbd/src/utf8.h -> makemkv-oss-1.10.2.tar.xz/libmmbd/src/utf8.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     libMMBD - MakeMKV BD decryption API library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libmmbd@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libmmbd@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/makefile.common -> makemkv-oss-1.10.2.tar.xz/makefile.common Changed
10
 
1
@@ -43,7 +43,7 @@
2
 LIBDCADEC_SRC=libffabi/src/dcadec/bitstream.cpp libffabi/src/dcadec/core_decoder.cpp libffabi/src/dcadec/dca_context.cpp \
3
     libffabi/src/dcadec/dmix_tables.cpp libffabi/src/dcadec/exss_parser.cpp libffabi/src/dcadec/idct_fixed.cpp \
4
     libffabi/src/dcadec/interpolator.cpp libffabi/src/dcadec/interpolator_fixed.cpp libffabi/src/dcadec/interpolator_float.cpp \
5
-    libffabi/src/dcadec/ta.cpp libffabi/src/dcadec/xll_decoder.cpp
6
+    libffabi/src/dcadec/ta.cpp libffabi/src/dcadec/xll_decoder.cpp libffabi/src/dcadec/idct_float.cpp \
7
 
8
 LIBDCADEC_DEF=-DDCA_LOG -DDCA_FFMALLOC
9
 
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/inc/QtExt/NativeFileDialog.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/inc/QtExt/NativeFileDialog.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     Qt extension library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libqtext@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libqtext@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/inc/lgpl/apdefs.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/inc/lgpl/apdefs.h Changed
41
 
1
@@ -100,6 +100,8 @@
2
   ap_iaOutputAudioChannelLayoutName=46,
3
   ap_iaOutputAudioChannelLayout=47,
4
   ap_iaOutputAudioMixDescription=48,
5
+  ap_iaComment=49,
6
+  ap_iaOffsetSequenceId=50,
7
   ap_iaMaxValue
8
 } AP_ItemAttributeId;
9
 
10
@@ -131,6 +133,7 @@
11
 static const unsigned int AP_AVStreamFlag_DerivedStream=2048;
12
 static const unsigned int AP_AVStreamFlag_ForcedSubtitles=4096;
13
 static const unsigned int AP_AVStreamFlag_ProfileSecondaryStream=16384;
14
+static const unsigned int AP_AVStreamFlag_OffsetSequenceIdPresent=32768;
15
 
16
 
17
 static const unsigned int AP_APP_LOC_POGZ=1;
18
@@ -287,6 +290,7 @@
19
 static const unsigned long APP_IFACE_SETTINGS_ADV_DEFAULT_SELECTION=6174;
20
 static const unsigned long APP_IFACE_SETTINGS_ADV_FFMPEG_PATH=6175;
21
 static const unsigned long APP_IFACE_SETTINGS_ADV_DTSHDDEC_PATH=6176;
22
+static const unsigned long APP_IFACE_SETTINGS_PROT_JAVA_PATH=6177;
23
 static const unsigned long APP_IFACE_BACKUPDLG_TEXT_CAPTION=6137;
24
 static const unsigned long APP_IFACE_BACKUPDLG_TEXT=6138;
25
 static const unsigned long APP_IFACE_BACKUPDLG_FOLDER=6139;
26
@@ -396,10 +400,13 @@
27
   apset_screen_state ,
28
   apset_app_DefaultProfileName ,
29
   apset_app_DefaultSelectionString ,
30
-  apset_old_app_ffmpeg ,
31
+  apset_app_Java ,
32
   apset_app_dtshddec ,
33
   apset_app_SiteInfoString ,
34
   apset_path_OpenFile ,
35
+  apset_path_DestDir ,
36
+  apset_path_BackupDirMRU ,
37
+  apset_path_DestDirMRU ,
38
   apset_MaxValue
39
 } ApSettingId;
40
 
41
makemkv-oss-1.9.5.tar.xz/makemkvgui/inc/ver_num.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/inc/ver_num.h Changed
10
 
1
@@ -10,7 +10,7 @@
2
 #ifndef VERNUM_H_INCLUDED
3
 #define VERNUM_H_INCLUDED
4
 
5
-#define MAKEMKV_VERSION_NUMBER  "v1.9.5"
6
+#define MAKEMKV_VERSION_NUMBER  "v1.10.2"
7
 #define LIBMMBD_VERSION_NUMBER  "v1.2.0"
8
 
9
 #endif // VERNUM_H_INCLUDED
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/aboutbox.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/aboutbox.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/aboutbox.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/aboutbox.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/abutton.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/abutton.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/abutton.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/abutton.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/api_linux.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/api_linux.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/api_posix.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/api_posix.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/backupdlg.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/backupdlg.cpp Changed
19
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -30,7 +30,7 @@
11
     labelText->setWordWrap(true);
12
     labelText->setText(UI_QSTRING(APP_IFACE_BACKUPDLG_TEXT));
13
 
14
-    backupDir = new CDirSelectBox(CDirSelectBox::DirBoxOutDir,UI_QSTRING(APP_IFACE_BACKUPDLG_FOLDER));
15
+    backupDir = new CDirSelectBox(ap_client,CDirSelectBox::DirBoxOutDirBackup,UI_QSTRING(APP_IFACE_BACKUPDLG_FOLDER));
16
     buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel , Qt::Horizontal);
17
 
18
     QGroupBox* box = new QGroupBox(UI_QSTRING(APP_IFACE_BACKUPDLG_TEXT_CAPTION));
19
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/backupdlg.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/backupdlg.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/client.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/client.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/dirselectbox.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/dirselectbox.cpp Changed
201
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -17,10 +17,16 @@
11
 #include "qtapp.h"
12
 #include "image_defs.h"
13
 
14
-CDirSelectBox::CDirSelectBox(CDirSelectBox::Style BoxStyle,const QString &Name, QWidgetList widgets , QWidget *parent) : QGroupBox(Name,parent)
15
+CDirSelectBox::CDirSelectBox(CApClient* ap_client,CDirSelectBox::Style BoxStyle,const QString &Name, QWidgetList widgets , QWidget *parent) : QGroupBox(Name,parent)
16
 {
17
+    client = ap_client;
18
     style = BoxStyle;
19
-    lineEditDir = new QLineEdit();
20
+    comboBoxDir = new QComboBox();
21
+    comboBoxDir->setEditable(true);
22
+    comboBoxDir->setInsertPolicy(QComboBox::NoInsert);
23
+    lineEditDir = comboBoxDir->lineEdit();
24
+    appendName = NULL;
25
+
26
     connect(lineEditDir,SIGNAL(textChanged(const QString &)),this,SLOT(SlotTextChanged(const QString &)));
27
     QGridLayout *lay = new QGridLayout();
28
 
29
@@ -37,7 +43,7 @@
30
         connect(btn, SIGNAL(toggled(bool)) , this , SLOT(SlotRadioToggled()) );
31
     }
32
 
33
-    lay->addWidget(lineEditDir,row,0);
34
+    lay->addWidget(comboBoxDir,row,0);
35
     lay->setColumnStretch(0,2);
36
 
37
     static QIcon *set_folder_icon;
38
@@ -58,7 +64,8 @@
39
     case DirBoxDir:
40
         toolButtonAction  = new QAction(*set_folder_icon, Name, this);
41
         break;
42
-    case DirBoxOutDir:
43
+    case DirBoxOutDirMKV:
44
+    case DirBoxOutDirBackup:
45
         toolButtonAction  = new QAction(*set_out_folder_icon, UI_QSTRING(APP_IFACE_ACT_SETFOLDER_NAME), this);
46
         toolButtonAction->setStatusTip(UI_QSTRING(APP_IFACE_ACT_SETFOLDER_STIP));
47
         break;
48
@@ -79,6 +86,11 @@
49
     EmitValidChanged();
50
 }
51
 
52
+void CDirSelectBox::setAppendName(const QString* AppendName)
53
+{
54
+    appendName = AppendName;
55
+}
56
+
57
 void CDirSelectBox::setIndexValue(int Index)
58
 {
59
     if (Index>=MaxRadioButtons) return;
60
@@ -99,14 +111,31 @@
61
 void CDirSelectBox::SlotButtonPressed()
62
 {
63
     QString dir;
64
+
65
+    dir = lineEditDir->text();
66
+    if (appendName) {
67
+        unsigned int dlen = dir.length();
68
+        unsigned int alen = appendName->length();
69
+        if (dlen>(alen+1)) {
70
+            if ( (dir.at(dlen-(alen+1))==QLatin1Char('/')) ||
71
+                 (dir.at(dlen-(alen+1))==QLatin1Char('\\')) )
72
+            {
73
+                if (dir.endsWith(appendName)) {
74
+                    dir.chop(alen+1);
75
+                }
76
+            }
77
+        }
78
+    }
79
+
80
     switch(style)
81
     {
82
     case DirBoxDir:
83
-    case DirBoxOutDir:
84
+    case DirBoxOutDirMKV:
85
+    case DirBoxOutDirBackup:
86
         dir = QFileDialog::getExistingDirectory(
87
             this,
88
             UI_QSTRING(APP_IFACE_OPENFOLDER_TITLE),
89
-            lineEditDir->text());
90
+            dir);
91
         break;
92
     case DirBoxFile:
93
         dir = QFileDialog::getOpenFileName(
94
@@ -116,16 +145,79 @@
95
 
96
     if ( (dir.isEmpty()) || (dir.isNull()) ) return;
97
 
98
-    setText(dir);
99
+    if (appendName) {
100
+        dir = append(dir,appendName);
101
+    }
102
+
103
+    setText(dir,true);
104
+
105
+    if (client && (style==DirBoxOutDirMKV)) {
106
+        client->SetSettingString(apset_path_DestDirMRU,Utf16FromQString(getMRU()));
107
+    }
108
+    if (client && (style==DirBoxOutDirBackup)) {
109
+        client->SetSettingString(apset_path_BackupDirMRU,Utf16FromQString(getMRU()));
110
+    }
111
 }
112
 
113
-void CDirSelectBox::setText(const QString &Text)
114
+void CDirSelectBox::setText(const QString &Text,bool AddMRU)
115
 {
116
-    lineEditDir->setText(Text);
117
+    if (AddMRU) {
118
+        addMRU(Text,true);
119
+        lineEditDir->setText(Text);
120
+        comboBoxDir->setCurrentIndex(0);
121
+    } else {
122
+        lineEditDir->setText(Text);
123
+    }
124
     EmitValidChanged();
125
     emit SignalChanged();
126
 }
127
 
128
+void CDirSelectBox::clear()
129
+{
130
+    comboBoxDir->clear();
131
+    setText(QString(),false);
132
+}
133
+
134
+QString CDirSelectBox::append(const QString& Text,const QString* AppendName)
135
+{
136
+    QString path;
137
+
138
+    path.reserve( Text.length() + 2 + AppendName->length() );
139
+    path.append(Text);
140
+    if (!Text.endsWith(QLatin1Char('/'))) {
141
+        path.append(QLatin1Char('/'));
142
+    }
143
+    path.append(*AppendName);
144
+
145
+    return path;
146
+}
147
+
148
+void CDirSelectBox::setMRU(const utf16_t* Data,const QString* AppendLast)
149
+{
150
+    const utf16_t *start,*end;
151
+
152
+    if (Data==NULL) return;
153
+
154
+    start = Data;
155
+    while(start) {
156
+        QString path;
157
+
158
+        while(*start=='*') start++;
159
+        end = start;
160
+        while ( (*end!='*') && (*end!=0) ) end++;
161
+
162
+        if (start!=end) {
163
+            path = QStringFromUtf16(start,end-start);
164
+            if (AppendLast) {
165
+                path = append(path,AppendLast);
166
+            }
167
+            addMRU(path,false);
168
+        }
169
+        if (*end==0) break;
170
+        start = end+1;
171
+    }
172
+}
173
+
174
 QAction* CDirSelectBox::selectDialogAction()
175
 {
176
     return toolButtonAction;
177
@@ -164,9 +256,72 @@
178
 
179
 void CDirSelectBox::setDirEnabled(bool Enabled)
180
 {
181
-    lineEditDir->setEnabled(Enabled);
182
+    comboBoxDir->setEnabled(Enabled);
183
     toolButtonAction->setEnabled(Enabled);
184
 }
185
 
186
+void CDirSelectBox::addMRU(const QString &Text,bool Top)
187
+{
188
+    int count = comboBoxDir->count();
189
+
190
+    if (Text.length()==0) return;
191
+
192
+    bool added = false;
193
+    for (int i=0;i<count;i++)
194
+    {
195
+        if (Text == comboBoxDir->itemText(i)) {
196
+            if (Top) {
197
+                comboBoxDir->removeItem(i);
198
+                comboBoxDir->insertItem(0,Text);
199
+            };
200
+            added = true;
201
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/dirselectbox.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/dirselectbox.h Changed
59
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -26,34 +26,44 @@
11
     typedef enum Style
12
     {
13
         DirBoxDir,
14
-        DirBoxOutDir,
15
+        DirBoxOutDirMKV,
16
+        DirBoxOutDirBackup,
17
         DirBoxFile
18
     } Style;
19
 
20
 private:
21
+    CApClient*   client;
22
     QLineEdit*   lineEditDir;
23
+    QComboBox*   comboBoxDir;
24
+    QStringList  mru;
25
     QToolButton* toolButtonSelect;
26
     QAction*     toolButtonAction;
27
     bool         validState;
28
     Style        style;
29
-
30
+    const QString*  appendName;
31
 private:
32
 
33
     static const unsigned int MaxRadioButtons = 5;
34
     QAbstractButton*    radioButtons[MaxRadioButtons];
35
 
36
 public:
37
-    CDirSelectBox(CDirSelectBox::Style BoxStyle,const QString &Name, QWidgetList widgets = QWidgetList(), QWidget *parent = 0);
38
+    CDirSelectBox(CApClient* ap_client,CDirSelectBox::Style BoxStyle,const QString &Name, QWidgetList widgets = QWidgetList(), QWidget *parent = 0);
39
     void setIndexValue(int Index);
40
     int getIndexValue();
41
     bool IsDirValid();
42
-    void setText(const QString &Text);
43
+    void setText(const QString &Text,bool addMRU=false);
44
+    void setMRU(const utf16_t* Data,const QString* AppendLast=NULL);
45
     QString text();
46
     QAction* selectDialogAction();
47
     void setDirEnabled(bool Enabled);
48
+    QString getMRU();
49
+    void setAppendName(const QString* AppendName);
50
+    void clear();
51
 
52
 private:
53
     void EmitValidChanged();
54
+    void addMRU(const QString &Text,bool Top);
55
+    static QString append(const QString& Text,const QString* AppendName);
56
 
57
 private slots:
58
     void SlotButtonPressed();
59
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/drivebox.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/drivebox.cpp Changed
26
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -19,7 +19,6 @@
11
 {
12
     setWindowIcon(*icon);
13
     setWindowTitle(UI_QSTRING(APP_SINGLE_DRIVE_TITLE));
14
-    m_MainWnd = MainWnd;
15
 
16
     QLabel *text = new QLabel();
17
     text->setTextFormat(Qt::PlainText);
18
@@ -36,7 +35,6 @@
19
 
20
     QBoxLayout *lay = new QVBoxLayout();
21
     lay->addWidget(text);
22
-    //lay->addSpacing(12);
23
     lay->addStretch(1);
24
     lay->addWidget(box);
25
     lay->addWidget(btn_box);
26
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/drivebox.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/drivebox.h Changed
18
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -28,7 +28,6 @@
11
     unsigned int result();
12
 
13
 private:
14
-    MainWnd *m_MainWnd;
15
     QComboBox *m_Box;
16
 };
17
 
18
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/dvdbox.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/dvdbox.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/dvdbox.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/dvdbox.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/image.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/image.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/image_data.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/image_data.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/image_defs.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/image_defs.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/image_linux.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/image_linux.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/lineeditk.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/lineeditk.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/lineeditk.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/lineeditk.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/logic.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/logic.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/logic_posix.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/logic_posix.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/logtext.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/logtext.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/logtext.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/logtext.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/lstring.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/lstring.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/main.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/main.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/mainwnd.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/mainwnd.cpp Changed
58
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -391,10 +391,14 @@
11
 
12
     QString name = DriveInfo[ndx].label;
13
 
14
-    dlg.backupDir->setText(QStringFromUtf16(m_app->GetAppString(AP_vastr_OutputBaseName)) + QLatin1String("/backup/") + name);
15
+    dlg.backupDir->setAppendName(&name);
16
+    dlg.backupDir->setText(QStringFromUtf16(m_app->GetAppString(AP_vastr_OutputBaseName)) + QLatin1String("/backup/") + name,true);
17
+    dlg.backupDir->setMRU(m_app->GetSettingString(apset_path_BackupDirMRU),&name);
18
 
19
     if (dlg.exec()==QDialog::Accepted)
20
     {
21
+        dlg.backupDir->setText(dlg.backupDir->text(),true);
22
+        m_app->SetSettingString(apset_path_BackupDirMRU,Utf16FromQString(dlg.backupDir->getMRU()));
23
         m_app->BackupDisc(ndx,Utf16FromQString(dlg.backupDir->text()),dlg.backupDecrypt);
24
     }
25
 }
26
@@ -403,6 +407,9 @@
27
 {
28
     m_FileInfo.setFile(saveFolderBox->text());
29
 
30
+    QString defPath = QStringFromUtf16(m_app->GetAppString(AP_vastr_OutputFolderName));
31
+    bool custPath = (defPath != saveFolderBox->text());
32
+
33
     SlotInfoCboxIndexChanged();
34
 
35
     QString absname;
36
@@ -435,9 +442,11 @@
37
 
38
     }
39
 
40
-    saveFolderBox->setText(absname);
41
+    saveFolderBox->setText(absname,custPath);
42
     m_app->SetOutputFolder(Utf16FromQString(absname));
43
 
44
+    m_app->SetSettingString(apset_path_DestDirMRU,Utf16FromQString(saveFolderBox->getMRU()));
45
+
46
     m_app->SaveAllSelectedTitlesToMkv();
47
 }
48
 
49
@@ -687,7 +696,7 @@
50
 
51
     QFrame* r_frame = new QFrame();
52
 
53
-    saveFolderBox = new CDirSelectBox(CDirSelectBox::DirBoxOutDir, UI_QSTRING(APP_IFACE_OPENFOLDER_INFO_TITLE) );
54
+    saveFolderBox = new CDirSelectBox(m_app,CDirSelectBox::DirBoxOutDirMKV, UI_QSTRING(APP_IFACE_OPENFOLDER_INFO_TITLE) );
55
     connect( saveFolderBox , SIGNAL(SignalDirValidChanged()) , this , SLOT(SlotOutputFolderEdited()) );
56
 
57
     QGroupBox* info_box = new QGroupBox(UI_QSTRING(APP_IFACE_MAIN_FRAME_INFO));
58
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/mainwnd.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/mainwnd.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/margui.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/margui.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/marshall.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/marshall.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/nativefiledialog.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/nativefiledialog.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     Qt extension library
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <libqtext@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <libqtext@makemkv.com>
7
 
8
     This library is free software; you can redistribute it and/or
9
     modify it under the terms of the GNU Lesser General Public
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/notify.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/notify.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/notify.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/notify.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/notify_linux.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/notify_linux.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/notify_none.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/notify_none.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/progress.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/progress.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/qtapp.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/qtapp.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/qtgui.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/qtgui.h Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/qtstr.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/qtstr.h Changed
25
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -33,6 +33,14 @@
11
     return t;
12
 }
13
 
14
+static inline QString QStringFromUtf16(const utf16_t *str,size_t count)
15
+{
16
+    QString t;
17
+    t.setUtf16((const ushort*)str,count);
18
+    return t;
19
+}
20
+
21
+
22
 static inline utf16_t* QStringAccessBufferRW(QString &str)
23
 {
24
     QChar* p = str.data();
25
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/scsiinfo.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/scsiinfo.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/sem_posix.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/sem_posix.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/settingdlg.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/settingdlg.cpp Changed
95
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -29,7 +29,7 @@
11
     buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel | QDialogButtonBox::Apply , Qt::Horizontal);
12
 
13
     // dvd
14
-    dvdTab = new CDVDTab();
15
+    dvdTab = new CDVDTab(client);
16
     tabWidget->addTab(dvdTab, UI_QSTRING(APP_TTREE_VIDEO));
17
 
18
     // IO
19
@@ -146,7 +146,8 @@
20
     // dvd
21
     const utf16_t *dest_path = client->GetSettingString(apset_app_DestinationDir);
22
     if (NULL==dest_path) dest_path=zero;
23
-    dvdTab->destinationDir->setText(QStringFromUtf16(dest_path));
24
+    dvdTab->destinationDir->setText(QStringFromUtf16(dest_path),true);
25
+    dvdTab->destinationDir->setMRU(client->GetSettingString(apset_path_DestDirMRU));
26
 
27
     int dest_type = client->GetSettingInt(apset_app_DestinationType);
28
     dvdTab->destinationDir->setIndexValue(dest_type);
29
@@ -157,6 +158,7 @@
30
     // prot
31
     int SpRemoveMethod = client->GetSettingInt(apset_dvd_SPRemoveMethod);
32
     protTab->comboBoxSpRemoveMethod->setCurrentIndex(SpRemoveMethod);
33
+    protTab->javaDir->setText(QStringFromUtf16( client->GetSettingString(apset_app_Java)));
34
 
35
     int dump_always = client->GetSettingInt(apset_bdplus_DumpAlways);
36
     protTab->check_DumpAlways->setCheckState( (dump_always==0) ? Qt::Unchecked : Qt::Checked );
37
@@ -249,6 +251,7 @@
38
     //prot
39
     client->SetSettingInt(apset_dvd_SPRemoveMethod,protTab->comboBoxSpRemoveMethod->currentIndex());
40
     client->SetSettingInt( apset_bdplus_DumpAlways , (protTab->check_DumpAlways->checkState() == Qt::Checked) ? 1 : 0 );
41
+    client->SetSettingString(apset_app_Java,Utf16FromQString(protTab->javaDir->text()));
42
 
43
     // stream
44
     client->SetSettingInt(apset_stream_EnableUPNP , (streamTab->checkEnableUpnp->checkState() == Qt::Checked) ? 1 : 0 );
45
@@ -330,7 +333,7 @@
46
     this->setLayout(lay);
47
 }
48
 
49
-CDVDTab::CDVDTab(QWidget *parent) : QWidget(parent)
50
+CDVDTab::CDVDTab(CApClient* client,QWidget *parent) : QWidget(parent)
51
 {
52
     radio_None = new QRadioButton(UI_QSTRING(APP_IFACE_SETTINGS_DEST_TYPE_NONE));
53
     radio_Auto = new QRadioButton(UI_QSTRING(APP_IFACE_SETTINGS_DEST_TYPE_AUTO));
54
@@ -343,7 +346,7 @@
55
     lst.append(radio_SemiAuto);
56
     lst.append(radio_Custom);
57
 
58
-    destinationDir = new CDirSelectBox(CDirSelectBox::DirBoxOutDir,UI_QSTRING(APP_IFACE_SETTINGS_DESTDIR),lst);
59
+    destinationDir = new CDirSelectBox(client,CDirSelectBox::DirBoxOutDirMKV,UI_QSTRING(APP_IFACE_SETTINGS_DESTDIR),lst);
60
 
61
     connect(destinationDir, SIGNAL(SignalIndexChanged()) , this , SLOT(SlotIndexChanged()) );
62
 
63
@@ -391,10 +394,13 @@
64
     m_lay->addWidget(check_DumpAlways,0,1);
65
     miscBox->setLayout(m_lay);
66
 
67
+    javaDir = new CDirSelectBox(NULL,CDirSelectBox::DirBoxFile,UI_QSTRING(APP_IFACE_SETTINGS_PROT_JAVA_PATH));
68
+
69
     QBoxLayout *lay = new QVBoxLayout();
70
 
71
     lay->addWidget(dvdBox);
72
     lay->addWidget(miscBox);
73
+    lay->addWidget(javaDir);
74
 
75
     lay->addStretch(2);
76
     this->setLayout(lay);
77
@@ -433,7 +439,7 @@
78
 
79
 CGeneralTab::CGeneralTab(QWidget *parent) : QWidget(parent)
80
 {
81
-    dataDir = new CDirSelectBox(CDirSelectBox::DirBoxDir,UI_QSTRING(APP_IFACE_SETTINGS_DATA_DIR));
82
+    dataDir = new CDirSelectBox(NULL,CDirSelectBox::DirBoxDir,UI_QSTRING(APP_IFACE_SETTINGS_DATA_DIR));
83
 
84
     QGroupBox* miscBox = new QGroupBox(UI_QSTRING(APP_IFACE_SETTINGS_GENERAL_MISC));
85
     QGridLayout *m_lay = new QGridLayout();
86
@@ -624,7 +630,7 @@
87
     b_lay->addWidget(lineEditSelection,1,1);
88
     box->setLayout(b_lay);
89
 
90
-    dtshddecDir = new CDirSelectBox(CDirSelectBox::DirBoxFile,UI_QSTRING(APP_IFACE_SETTINGS_ADV_DTSHDDEC_PATH));
91
+    dtshddecDir = new CDirSelectBox(NULL,CDirSelectBox::DirBoxFile,UI_QSTRING(APP_IFACE_SETTINGS_ADV_DTSHDDEC_PATH));
92
 
93
     QBoxLayout *lay = new QVBoxLayout();
94
 
95
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/settingdlg.h -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/settingdlg.h Changed
27
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -79,7 +79,7 @@
11
 
12
 
13
 public:
14
-    CDVDTab(QWidget *parent = 0);
15
+    CDVDTab(CApClient* ap_client,QWidget *parent = 0);
16
 private slots:
17
     void SlotIndexChanged();
18
 };
19
@@ -91,6 +91,7 @@
20
 public:
21
     QComboBox*   comboBoxSpRemoveMethod;
22
     QCheckBox*      check_DumpAlways;
23
+    CDirSelectBox*  javaDir;
24
 
25
 public:
26
     CProtTab(QWidget *parent = 0);
27
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/spawn_posix.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/spawn_posix.cpp Changed
10
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/str/en_utf16.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/str/en_utf16.cpp Changed
166
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -13,7 +13,7 @@
11
 
12
 */
13
 
14
-static const unsigned short en_po_str[21356]={
15
+static const unsigned short en_po_str[21645]={
16
 'e','n','g',':','E','n','g','l','i','s','h',0,
17
 'D','B','G',' ','A','S','S','E','R','T',':',' ','%','1',' ','a','t',' ','%','2',':','%','3',0,
18
 'L','I','B','M','K','V','_','T','R','A','C','E',':',' ','%','1',0,
19
@@ -126,7 +126,7 @@
20
 'P','r','o','c','e','s','s','i','n','g',' ','t','i','t','l','e','s',0,
21
 'V','C','-','1',' ','v','i','d','e','o',' ','s','t','r','e','a','m',' ','w','i','t','h','o','u','t',' ','T','F','C','N','T','R',' ','i','n','f','o','r','m','a','t','i','o','n',' ','i','s',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d',',',' ','s','o','r','r','y','.',' ','F','e','w',' ','H','D','-','D','V','D','s',' ','u','s','e',' ','i','t',' ','a','n','y','w','a','y','.',0,
22
 'O','p','e','n','i','n','g',' ','M','K','V',' ','f','i','l','e',0,
23
-'T','r','a','c','k',' ','#','%','1',' ','o','f',' ','t','y','p','e',' ','%','2',' ','i','n',' ','M','K','V',' ','f','i','l','e',' ','i','s',' ','n','o','t',' ','r','e','c','o','g','n','i','z','e','d',' ','a','n','d',' ','w','a','s',' ','s','k','i','p','p','e','d','.',0,
24
+'T','r','a','c','k',' ','#','%','1',' ','o','f',' ','t','y','p','e',' ','%','2',' ','i','n',' ','%','3',' ','f','i','l','e',' ','i','s',' ','n','o','t',' ','r','e','c','o','g','n','i','z','e','d',' ','a','n','d',' ','w','a','s',' ','s','k','i','p','p','e','d','.',0,
25
 'M','K','V',' ','f','i','l','e',' ','h','a','s',' ','n','o',' ','v','i','d','e','o',' ','t','r','a','c','k','s',' ','a','n','d',' ','c','a','n',0x27,'t',' ','b','e',' ','o','p','e','n','e','d','.',0,
26
 'S','k','i','p','p','i','n','g',' ','A','V',' ','c','l','i','p',' ','%','1',' ','s','i','n','c','e',' ','i','t',' ','i','s',' ','n','o','t',' ','a',' ','v','i','d','e','o',' ','a','p','p','l','i','c','a','t','i','o','n',0,
27
 'A','A','C','S','-','p','r','o','t','e','c','t','e','d',' ','d','i','s','c','s',' ','t','h','a','t',' ','u','s','e',' ','S','K','B',' ','a','r','e',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d',0,
28
@@ -172,6 +172,8 @@
29
 'H','i','g','h','e','s','t',' ','A','A','C','S',' ','v','e','r','s','i','o','n',' ','i','s',' ','v','%','1',' ',',',' ','M','K','B',' ','s','a','v','e','d',' ','a','s',' ','%','2',0,
30
 'I','t',' ','a','p','p','e','a','r','s',' ','t','h','a','t',' ','y','o','u',' ','a','r','e',' ','o','p','e','n','i','n','g',' ','t','h','e',' ','d','i','s','c',' ','p','r','o','c','e','s','s','e','d',' ','b','y',' ','D','v','d','F','a','b','/','M','a','c','T','h','e','R','i','p','p','e','r',' ','w','h','i','c','h',' ','i','s',' ','k','n','o','w','n',' ','t','o',' ','p','r','o','d','u','c','e',' ','d','a','m','a','g','e','d',' ','V','O','B',' ','f','i','l','e','s','.',' ','E','r','r','o','r','s',' ','m','a','y',' ','f','o','l','l','o','w',' ','-',' ','p','l','e','a','s','e',' ','u','s','e',' ','o','r','i','g','i','n','a','l',' ','d','i','s','c',' ','i','n','s','t','e','a','d','.',0,
31
 'B','o','t','h',' ','d','i','s','c',' ','a','n','d',' ','d','r','i','v','e',' ','r','e','q','u','i','r','e',' ','b','u','s',' ','e','n','c','r','y','p','t','i','o','n',',',' ','b','u','t',' ','t','h','e',' ','b','u','s',' ','k','e','y',' ','i','s',' ','n','o','t',' ','k','n','o','w','n','.',0,
32
+'U','s','i','n','g',' ','J','a','v','a',' ','r','u','n','t','i','m','e',' ','f','r','o','m',' ','%','1',0,
33
+'T','h','i','s',' ','d','i','s','c',' ','r','e','q','u','i','r','e','s',' ','J','a','v','a',' ','r','u','n','t','i','m','e',' ','(','J','R','E',')',',',' ','b','u','t',' ','n','o','n','e',' ','w','a','s',' ','f','o','u','n','d','.',' ','C','e','r','t','a','i','n',' ','f','u','n','c','t','i','o','n','s',' ','w','i','l','l',' ','f','a','i','l',',',' ','p','l','e','a','s','e',' ','i','n','s','t','a','l','l',' ','J','a','v','a','.',' ','S','e','e',' ','%','1',' ','f','o','r',' ','d','e','t','a','i','l','s','.',0,
34
 'P','r','o','c','e','s','s','i','n','g',' ','A','V',' ','c','l','i','p','s',0,
35
 'P','r','o','c','e','s','s','i','n','g',' ','m','o','v','i','e',' ','p','l','a','y','l','i','s','t','s',0,
36
 'D','e','c','r','y','p','t','i','n','g',0,
37
@@ -211,6 +213,7 @@
38
 'c','o','n','v','e','r','t','i','n','g',' ','a','u','d','i','o',' ','f','r','o','m',' ','%','1',' ','t','o',' ','%','2',0,
39
 'a','u','d','i','o',' ','c','h','a','n','g','e','s',' ','f','r','o','m',' ','%','1',' ','t','o',' ','%','2',',',' ','y','o','u',' ','w','o','n',0x27,'t',' ','b','e',' ','a','b','l','e',' ','t','o',' ','c','o','n','v','e','r','t',' ','t','h','i','s',' ','t','r','a','c','k',' ','t','o',' ','a','n','y',' ','o','t','h','e','r',' ','f','o','r','m','a','t',' ','l','a','t','e','r',',',' ','p','l','e','a','s','e',' ','u','s','e',' ','a',' ','c','o','n','v','e','r','s','i','o','n',' ','p','r','o','f','i','l','e',' ','w','i','t','h',' ','a','u','d','i','o',' ','t','r','a','n','s','c','o','d','i','n','g',0,
40
 'F','F','M','P','E','G','_','E','R','R','O','R',':',' ','%','1',0,
41
+'C','l','i','p',' ','b','o','u','n','d','a','r','y',' ','n','o','t',' ','a','l','i','g','n','e','d',',',' ','m','o','v','i','n','g',' ','t','o',' ','t','h','e',' ','c','l','o','s','e','s','t',' ','a','l','i','g','n','e','d',' ','v','a','l','u','e',0,
42
 'S','t','r','e','a','m','s',' ','w','i','t','h',' ','w','i','d','e',' ','l','e','f','t','/','r','i','g','h','t',' ','c','h','a','n','n','e','l','s',' ','a','r','e',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','.',0,
43
 'S','t','r','e','a','m','s',' ','w','i','t','h',' ','s','i','d','e',' ','h','i','g','h',' ','l','e','f','t','/','r','i','g','h','t',' ','c','h','a','n','n','e','l','s',' ','a','r','e',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','.',0,
44
 'T','h','i','s',' ','s','t','r','e','a','m',' ','c','a','n',0x27,'t',' ','b','e',' ','p','r','o','p','e','r','l','y',' ','d','e','c','o','d','e','d',' ','b','y',' ','t','h','i','s',' ','D','L','L',',',' ','p','l','e','a','s','e',' ','u','s','e',' ','d','t','s','d','e','c','o','d','e','r','d','l','l',' ','v','1','.','1','.','0','.','5',' ','o','r',' ','l','a','t','e','r','.',0,
45
@@ -308,6 +311,7 @@
46
 'S','t','e','r','e','o',0,
47
 'S','u','r','r','o','u','n','d',0,
48
 'M','a','k','e','M','K','V',' ','w','e','b','s','i','t','e',' ','a','d','d','r','e','s','s',' ','i','s',' ','%','1',0,
49
+'F','i','l','e',' ','"','%','1','"',' ','w','a','s',' ','s','k','i','p','p','e','d',0,
50
 'P','r','i','m','a','r','y',' ','t','i','t','l','e',0,
51
 'T','y','p','e',0,
52
 'N','a','m','e',0,
53
@@ -339,6 +343,8 @@
54
 'M','K','V',' ','F','l','a','g','s',0,
55
 'C','h','a','n','n','e','l',' ','l','a','y','o','u','t',0,
56
 'A','u','d','i','o',' ','m','i','x',0,
57
+'C','o','m','m','e','n','t',0,
58
+'3','D',' ','p','l','a','n','e',0,
59
 'C','o','p','y',' ','a','s',' ','i','s',0,
60
 'R','a','w',' ','L','P','C','M',' ','a','u','d','i','o',' ','w','i','t','h','o','u','t',' ','c','h','a','n','n','e','l',' ','c','o','n','f','i','g','u','r','a','t','i','o','n',' ','m','e','t','a','d','a','t','a',0,
61
 'L','P','C','M',' ','a','u','d','i','o',' ','i','n',' ','W','A','V',' ','c','o','n','t','a','i','n','e','r',' ','w','i','t','h',' ','c','h','a','n','n','e','l',' ','c','o','n','f','i','g','u','r','a','t','i','o','n',' ','m','e','t','a','d','a','t','a',0,
62
@@ -507,6 +513,7 @@
63
 'D','e','f','a','u','l','t',' ','s','e','l','e','c','t','i','o','n',' ','r','u','l','e',' ',':',0,
64
 'F','F','M','P','E','G',' ','l','o','c','a','t','i','o','n',0,
65
 'd','t','s','d','e','c','o','d','e','r','d','l','l','.','d','l','l',' ','l','o','c','a','t','i','o','n',0,
66
+'C','u','s','t','o','m',' ','J','a','v','a',' ','e','x','e','c','u','t','a','b','l','e',' ','l','o','c','a','t','i','o','n',0,
67
 'P','r','o','f','i','l','e',0,
68
 'P','r','o','p','e','r','t','i','e','s',0,
69
 'T','i','t','l','e',0,
70
@@ -559,7 +566,7 @@
71
 'O','S',' ','d','e','v','i','c','e',' ','n','a','m','e',':',' ',0,
72
 0};
73
 
74
-static const unsigned int en_po_off[1087]={
75
+static const unsigned int en_po_off[1101]={
76
 1000,0,1001,12,1002,36,1003,53,1004,77,1005,124,1006,135,1007,136,1008,226,1009,275,1010,301,
77
 1011,320,1012,323,2001,329,2002,378,2003,464,2004,518,2006,586,2007,703,2008,858,2009,981,2010,1109,
78
 2011,1154,2012,1298,2013,1382,2014,1468,2015,1516,2016,1598,2017,1761,2018,1876,2019,1938,2020,1978,2021,2145,
79
@@ -570,46 +577,46 @@
80
 3027,4216,3028,4272,3029,4309,3030,4369,3031,4432,3032,4582,3033,4691,3034,4737,3035,4782,3036,4872,3037,4931,
81
 3038,4972,3039,5012,3040,5070,3041,5104,3042,5142,3043,5250,3100,5333,3101,5350,3102,5383,3103,5405,3104,5423,
82
 3105,5439,3106,5446,3107,5459,3108,5468,3109,5481,3110,5494,3111,5506,3200,5526,3201,5555,3202,5573,3203,5584,
83
-3204,5602,3210,5699,3220,5716,3221,5784,3300,5834,3301,5890,3302,5942,3303,5989,3304,6056,3305,6077,3306,6131,
84
-3307,6230,3308,6261,3309,6303,3310,6349,3311,6441,3312,6508,3313,6585,3314,6653,3315,6702,3316,6725,3317,6748,
85
-3318,6770,3319,6823,3320,6885,3321,6945,3322,7023,3323,7075,3324,7134,3325,7180,3326,7233,3327,7306,3328,7370,
86
-3329,7419,3330,7512,3331,7569,3332,7603,3333,7629,3334,7694,3335,8093,3336,8461,3337,8844,3338,8923,3339,8959,
87
-3340,9008,3341,9081,3342,9127,3343,9300,3400,9374,3401,9394,3402,9421,3403,9432,3404,9450,3405,9471,3406,9479,
88
-3407,9499,4001,9512,4002,9595,4003,9661,4004,9726,4007,9809,4008,9871,4009,9929,4020,10040,4021,10075,4022,10127,
89
-4023,10159,4024,10223,4025,10257,4026,10303,4027,10350,4028,10398,4040,10441,4041,10519,4042,10578,4043,10630,4044,10727,
90
-4045,10798,4046,10896,4047,10939,4048,10977,4049,11012,4050,11064,4051,11145,4052,11195,4053,11226,4054,11377,4060,11394,
91
-4061,11451,4062,11513,4500,11608,4501,11689,4502,11714,4503,11747,4504,11781,5000,11833,5001,11858,5002,11910,5003,11927,
92
-5004,11962,5005,11989,5006,12005,5007,12028,5008,12051,5009,12092,5010,12125,5011,12145,5012,12178,5013,12217,5014,12272,
93
-5015,12307,5016,12376,5017,12400,5018,12419,5019,12443,5020,12468,5021,12623,5022,12769,5024,12852,5025,12883,5026,12899,
94
-5027,12906,5028,12918,5029,12930,5030,12940,5031,12952,5033,12964,5036,12975,5037,13007,5038,13050,5039,13215,5040,13396,
95
-5041,13622,5042,13769,5043,13819,5044,13915,5045,13928,5046,13942,5047,13955,5048,13973,5049,13988,5050,13995,5051,14045,
96
-5052,14203,5053,14376,5054,14572,5055,14632,5056,14700,5057,14768,5058,14796,5060,14943,5061,14952,5062,14965,5063,14976,
97
-5064,14988,5065,14994,5066,15002,5067,15017,5068,15023,5069,15089,5070,15103,5071,15115,5072,15292,5073,15325,5074,15405,
98
-5075,15531,5076,15582,5077,15643,5078,15682,5079,15744,5080,15787,5081,15802,5082,15815,5083,15859,5084,15929,5085,16006,
99
-5086,16070,5087,16078,5088,16099,5089,16123,5090,16134,5091,16139,5092,16146,5093,16155,5100,16185,5201,16199,5202,16204,
100
-5203,16209,5204,16218,5207,16227,5208,16233,5209,16248,5210,16257,5214,16262,5215,16271,5216,16277,5217,16294,5218,16306,
101
-5219,16322,5220,16333,5221,16346,5222,16357,5223,16363,5224,16373,5225,16389,5226,16403,5227,16415,5228,16425,5233,16443,
102
-5234,16456,5235,16470,5238,16489,5239,16499,5240,16509,5248,16524,5301,16534,5302,16545,5303,16599,5304,16663,5305,16674,
103
-5306,16691,5307,16701,5380,16711,5381,16719,6000,16726,6001,16739,6002,16758,6003,16777,6005,16811,6006,16832,6007,16846,
104
-6008,16928,6010,16942,6011,16954,6012,16961,6013,17005,6014,17012,6015,17037,6016,17055,6017,17102,6018,17123,6019,17144,
105
-6020,17150,6021,17157,6022,17174,6023,17181,6024,17214,6026,17238,6030,17295,6031,17301,6032,17307,6034,17313,6035,17321,
106
-6036,17331,6037,17339,6038,17364,6039,17376,6040,17388,6041,17417,6042,17472,6043,17485,6044,17513,6045,17526,6046,17539,
107
-6047,17561,6048,17571,6050,17595,6051,17640,6052,17733,6053,17745,6054,17761,6055,17777,6056,17792,6057,17805,6058,17826,
108
-6059,17832,6060,17839,6061,17846,6062,17859,6063,17873,6064,17890,6065,17908,6066,17924,6067,17937,6068,17949,6069,17963,
109
-6070,17968,6071,17977,6072,17984,6073,17991,6074,17999,6075,18012,6076,18017,6077,18041,6078,18072,6079,18127,6080,18197,
110
-6081,18205,6082,18210,6083,18229,6084,18253,6085,18273,6086,18278,6087,18311,6088,18353,6089,18373,6090,18378,6091,18383,
111
-6092,18392,6093,18399,6094,18419,6095,18433,6096,18454,6097,18462,6098,18486,6099,18548,6100,18569,6101,18580,6102,18592,
112
-6103,18600,6104,18605,6105,18630,6106,18637,6107,18662,6108,18683,6109,18724,6110,18741,6111,18752,6112,18769,6119,18783,
113
-6120,18813,6121,18842,6122,18871,6123,18905,6124,18936,6125,18968,6126,18988,6127,19018,6128,19046,6129,19068,6130,19082,
114
-6131,19108,6132,19116,6133,19139,6134,19150,6135,19162,6136,19182,6137,19202,6138,19214,6139,19479,6142,19511,6143,19534,
115
-6144,19545,6145,19562,6146,19572,6147,19597,6148,19605,6149,19625,6150,19667,6151,19691,6152,19731,6153,19740,6154,19761,
116
-6156,19782,6157,19787,6158,19792,6159,19818,6161,19831,6162,19845,6163,19871,6164,19889,6165,19892,6166,19902,6167,19913,
117
-6168,19936,6169,19964,6170,19978,6171,20013,6172,20046,6173,20055,6174,20073,6175,20098,6176,20114,6180,20141,6181,20149,
118
-6200,20160,6201,20166,6202,20172,6203,20178,6204,20188,6205,20193,6206,20205,6207,20214,6209,20228,6210,20241,6211,20252,
119
-6212,20267,6213,20279,6214,20288,6215,20299,6216,20308,6220,20316,6221,20340,6222,20353,6223,20364,6224,20374,6225,20387,
120
-6226,20756,6227,20774,6228,20875,6229,20886,6300,20903,6301,20932,6302,20950,6303,20965,6304,20975,6305,20986,6306,21002,
121
-6307,21021,6308,21037,6309,21060,6320,21083,6321,21115,6322,21147,6323,21172,6324,21188,6325,21200,6326,21212,6327,21232,
122
-6329,21251,6330,21272,6331,21305,6332,21338,0};
123
+3204,5602,3210,5699,3220,5716,3221,5783,3300,5833,3301,5889,3302,5941,3303,5988,3304,6055,3305,6076,3306,6130,
124
+3307,6229,3308,6260,3309,6302,3310,6348,3311,6440,3312,6507,3313,6584,3314,6652,3315,6701,3316,6724,3317,6747,
125
+3318,6769,3319,6822,3320,6884,3321,6944,3322,7022,3323,7074,3324,7133,3325,7179,3326,7232,3327,7305,3328,7369,
126
+3329,7418,3330,7511,3331,7568,3332,7602,3333,7628,3334,7693,3335,8092,3336,8460,3337,8843,3338,8922,3339,8958,
127
+3340,9007,3341,9080,3342,9126,3343,9299,3344,9373,3345,9400,3400,9529,3401,9549,3402,9576,3403,9587,3404,9605,
128
+3405,9626,3406,9634,3407,9654,4001,9667,4002,9750,4003,9816,4004,9881,4007,9964,4008,10026,4009,10084,4020,10195,
129
+4021,10230,4022,10282,4023,10314,4024,10378,4025,10412,4026,10458,4027,10505,4028,10553,4040,10596,4041,10674,4042,10733,
130
+4043,10785,4044,10882,4045,10953,4046,11051,4047,11094,4048,11132,4049,11167,4050,11219,4051,11300,4052,11350,4053,11381,
131
+4054,11532,4055,11549,4060,11612,4061,11669,4062,11731,4500,11826,4501,11907,4502,11932,4503,11965,4504,11999,5000,12051,
132
+5001,12076,5002,12128,5003,12145,5004,12180,5005,12207,5006,12223,5007,12246,5008,12269,5009,12310,5010,12343,5011,12363,
133
+5012,12396,5013,12435,5014,12490,5015,12525,5016,12594,5017,12618,5018,12637,5019,12661,5020,12686,5021,12841,5022,12987,
134
+5024,13070,5025,13101,5026,13117,5027,13124,5028,13136,5029,13148,5030,13158,5031,13170,5033,13182,5036,13193,5037,13225,
135
+5038,13268,5039,13433,5040,13614,5041,13840,5042,13987,5043,14037,5044,14133,5045,14146,5046,14160,5047,14173,5048,14191,
136
+5049,14206,5050,14213,5051,14263,5052,14421,5053,14594,5054,14790,5055,14850,5056,14918,5057,14986,5058,15014,5060,15161,
137
+5061,15170,5062,15183,5063,15194,5064,15206,5065,15212,5066,15220,5067,15235,5068,15241,5069,15307,5070,15321,5071,15333,
138
+5072,15510,5073,15543,5074,15623,5075,15749,5076,15800,5077,15861,5078,15900,5079,15962,5080,16005,5081,16020,5082,16033,
139
+5083,16077,5084,16147,5085,16224,5086,16288,5087,16296,5088,16317,5089,16341,5090,16352,5091,16357,5092,16364,5093,16373,
140
+5094,16403,5100,16425,5201,16439,5202,16444,5203,16449,5204,16458,5207,16467,5208,16473,5209,16488,5210,16497,5214,16502,
141
+5215,16511,5216,16517,5217,16534,5218,16546,5219,16562,5220,16573,5221,16586,5222,16597,5223,16603,5224,16613,5225,16629,
142
+5226,16643,5227,16655,5228,16665,5233,16683,5234,16696,5235,16710,5238,16729,5239,16739,5240,16749,5248,16764,5249,16774,
143
+5250,16782,5301,16791,5302,16802,5303,16856,5304,16920,5305,16931,5306,16948,5307,16958,5380,16968,5381,16976,6000,16983,
144
+6001,16996,6002,17015,6003,17034,6005,17068,6006,17089,6007,17103,6008,17185,6010,17199,6011,17211,6012,17218,6013,17262,
145
+6014,17269,6015,17294,6016,17312,6017,17359,6018,17380,6019,17401,6020,17407,6021,17414,6022,17431,6023,17438,6024,17471,
146
+6026,17495,6030,17552,6031,17558,6032,17564,6034,17570,6035,17578,6036,17588,6037,17596,6038,17621,6039,17633,6040,17645,
147
+6041,17674,6042,17729,6043,17742,6044,17770,6045,17783,6046,17796,6047,17818,6048,17828,6050,17852,6051,17897,6052,17990,
148
+6053,18002,6054,18018,6055,18034,6056,18049,6057,18062,6058,18083,6059,18089,6060,18096,6061,18103,6062,18116,6063,18130,
149
+6064,18147,6065,18165,6066,18181,6067,18194,6068,18206,6069,18220,6070,18225,6071,18234,6072,18241,6073,18248,6074,18256,
150
+6075,18269,6076,18274,6077,18298,6078,18329,6079,18384,6080,18454,6081,18462,6082,18467,6083,18486,6084,18510,6085,18530,
151
+6086,18535,6087,18568,6088,18610,6089,18630,6090,18635,6091,18640,6092,18649,6093,18656,6094,18676,6095,18690,6096,18711,
152
+6097,18719,6098,18743,6099,18805,6100,18826,6101,18837,6102,18849,6103,18857,6104,18862,6105,18887,6106,18894,6107,18919,
153
+6108,18940,6109,18981,6110,18998,6111,19009,6112,19026,6119,19040,6120,19070,6121,19099,6122,19128,6123,19162,6124,19193,
154
+6125,19225,6126,19245,6127,19275,6128,19303,6129,19325,6130,19339,6131,19365,6132,19373,6133,19396,6134,19407,6135,19419,
155
+6136,19439,6137,19459,6138,19471,6139,19736,6142,19768,6143,19791,6144,19802,6145,19819,6146,19829,6147,19854,6148,19862,
156
+6149,19882,6150,19924,6151,19948,6152,19988,6153,19997,6154,20018,6156,20039,6157,20044,6158,20049,6159,20075,6161,20088,
157
+6162,20102,6163,20128,6164,20146,6165,20149,6166,20159,6167,20170,6168,20193,6169,20221,6170,20235,6171,20270,6172,20303,
158
+6173,20312,6174,20330,6175,20355,6176,20371,6177,20398,6180,20430,6181,20438,6200,20449,6201,20455,6202,20461,6203,20467,
159
+6204,20477,6205,20482,6206,20494,6207,20503,6209,20517,6210,20530,6211,20541,6212,20556,6213,20568,6214,20577,6215,20588,
160
+6216,20597,6220,20605,6221,20629,6222,20642,6223,20653,6224,20663,6225,20676,6226,21045,6227,21063,6228,21164,6229,21175,
161
+6300,21192,6301,21221,6302,21239,6303,21254,6304,21264,6305,21275,6306,21291,6307,21310,6308,21326,6309,21349,6320,21372,
162
+6321,21404,6322,21436,6323,21461,6324,21477,6325,21489,6326,21501,6327,21521,6329,21540,6330,21561,6331,21594,6332,21627,0};
163
 
164
 extern "C" const unsigned short * en_po_getstr_utf16(unsigned int code)
165
 {
166
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/uisync.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/uisync.cpp Changed
25
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -833,11 +833,13 @@
11
 
12
         if (setFolder)
13
         {
14
+            saveFolderBox->clear();
15
             saveFolderBox->setText(QStringFromUtf16(m_app->GetAppString(AP_vastr_OutputFolderName)));
16
+            saveFolderBox->setMRU(m_app->GetSettingString(apset_path_DestDirMRU));
17
         }
18
 
19
     } else {
20
-        saveFolderBox->setText(QString());
21
+        saveFolderBox->clear();
22
         m_uisync_disabled--;
23
     }
24
 
25
makemkv-oss-1.9.5.tar.xz/makemkvgui/src/viteminfo.cpp -> makemkv-oss-1.10.2.tar.xz/makemkvgui/src/viteminfo.cpp Changed
26
 
1
@@ -1,7 +1,7 @@
2
 /*
3
     MakeMKV GUI - Graphics user interface application for MakeMKV
4
 
5
-    Copyright (C) 2007-2015 GuinpinSoft inc <makemkvgui@makemkv.com>
6
+    Copyright (C) 2007-2016 GuinpinSoft inc <makemkvgui@makemkv.com>
7
 
8
     You may use this file in accordance with the end user license
9
     agreement provided with the Software. For licensing terms and
10
@@ -112,6 +112,7 @@
11
 
12
     AppendItem(str,pi,ap_iaDateTime);
13
     AppendItem(str,pi,ap_iaName,expertMode);
14
+    AppendItem(str,pi,ap_iaComment);
15
     AppendItem(str,pi,ap_iaSourceFileName);
16
     AppendItem(str,pi,ap_iaOriginalTitleId);
17
     AppendItem(str,pi,ap_iaAngleInfo);
18
@@ -119,6 +120,7 @@
19
     AppendItem(str,pi,ap_iaDuration);
20
     AppendItem(str,pi,ap_iaChapterCount);
21
     AppendItem(str,pi,ap_iaCodecLong,ap_iaOutputCodecShort);
22
+    AppendItem(str,pi,ap_iaOffsetSequenceId);
23
     AppendItem(str,pi,ap_iaAudioChannelsCount,ap_iaOutputAudioChannelsCount);
24
     AppendItem(str,pi,ap_iaAudioChannelLayoutName,ap_iaOutputAudioChannelLayoutName);
25
     AppendItem(str,pi,ap_iaAudioSampleRate,ap_iaOutputAudioSampleRate);
26
makemkv-oss-1.9.5.tar.xz/msvc/inc/stdint.h -> makemkv-oss-1.10.2.tar.xz/msvc/inc/stdint.h Changed
26
 
1
@@ -34,6 +34,24 @@
2
 #define INTMAX_C(value) _i__CONCAT(value, LL)
3
 #define UINTMAX_C(value) _i__CONCAT(value, ULL)
4
 
5
+/* Minimum of signed integral types.  */
6
+# define INT8_MIN               (-128)
7
+# define INT16_MIN              (-32767-1)
8
+# define INT32_MIN              (-2147483647-1)
9
+# define INT64_MIN              (-__INT64_C(9223372036854775807)-1)
10
+
11
+/* Maximum of signed integral types.  */
12
+# define INT8_MAX               (127)
13
+# define INT16_MAX              (32767)
14
+# define INT32_MAX              (2147483647)
15
+# define INT64_MAX              (__INT64_C(9223372036854775807))
16
+
17
+/* Maximum of unsigned integral types.  */
18
+# define UINT8_MAX              (255)
19
+# define UINT16_MAX             (65535)
20
+# define UINT32_MAX             (4294967295U)
21
+# define UINT64_MAX             (__UINT64_C(18446744073709551615))
22
+
23
 #endif
24
 
25
 #endif // MSVC_STDDEF_H_INCLUDED
26
makemkv-oss-1.9.5.tar.xz/libffabi/src/dcadec/idct_fixed.h Deleted
27
 
1
@@ -1,25 +0,0 @@
2
-/*
3
- * This file is part of libdcadec.
4
- *
5
- * This library is free software; you can redistribute it and/or modify it
6
- * under the terms of the GNU Lesser General Public License as published by the
7
- * Free Software Foundation; either version 2.1 of the License, or (at your
8
- * option) any later version.
9
- *
10
- * This library is distributed in the hope that it will be useful, but WITHOUT
11
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
13
- * for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public License
16
- * along with this library; if not, write to the Free Software Foundation,
17
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
- */
19
-
20
-#ifndef IDCT_FIXED_H
21
-#define IDCT_FIXED_H
22
-
23
-void inverse_dct32_fixed(int *input, int *output);
24
-void inverse_dct64_fixed(int *input, int *output);
25
-
26
-#endif
27