[Matroska-users] Questions regarding Mkclean and Mkvalidator

Jonathan Williams technopundit at gmail.com
Sun Jul 10 19:30:06 CEST 2011


Hello,

I have three questions.

 

1)      Is it possible to redirect the output of mkclean and mkvalidator to
a text file?  I've tried a number of the usual methods in Windows, with no
luck thus far.  Is there something obvious I'm missing?

2)      I've had some difficulty with compilation of mkclean and mkvalidator
on 32-bit Ubuntu Linux.  While I can get them to compile with only warnings,
the end result is executables that function differently than the executables
of the same version under Windows.  For example, mkvalidator is finding
loads of errors in files when run directly on my Ubuntu file server that
it's not finding when run from a Windows machine accessing mkv files on the
server.  And when running mkclean directly on the file server, it's
producing a clean output file that stops at about 2 GB, whereas running the
windows version from a machine accessing the file server is producing output
that is the approximate full size of the original file. 

 

To compile, after untarring the source, I'm running "./configure" from the
root source directory, then "make -C mkvalidator" or "make -C mkclean".

 

Here's the output of the make command:

 

root at ZPM:/usr/src/mkvalidator-0.3.5# make -C mkvalidator

make: Entering directory `/usr/src/mkvalidator-0.3.5/mkvalidator'

make[1]: Entering directory `/usr/src/mkvalidator-0.3.5/mkvalidator'

make[2]: Entering directory `/usr/src/mkvalidator-0.3.5/libmatroska2'

make[3]: Entering directory `/usr/src/mkvalidator-0.3.5/libebml2'

compiling ../corec/corec/array/array.c

compiling ../corec/corec/helpers/charconvert/charconvert_linux.c

compiling ../corec/corec/helpers/date/date_libc.c

compiling ../corec/corec/helpers/file/bufstream.c

compiling ../corec/corec/helpers/file/file_libc.c

compiling ../corec/corec/helpers/file/memstream.c

../corec/corec/helpers/file/memstream.c: In function 'MemWrite':

../corec/corec/helpers/file/memstream.c:59: warning: passing argument 1 of
'memcpy' discards qualifiers from pointer target type

/usr/include/bits/string3.h:49: note: expected 'void * __restrict__' but
argument is of type 'const uint8_t *'

compiling ../corec/corec/helpers/file/stream_stdio.c

compiling ../corec/corec/helpers/file/streams.c

compiling ../corec/corec/helpers/file/tools.c

compiling ../corec/corec/helpers/parser/buffer.c

compiling ../corec/corec/helpers/parser/dataheap.c

compiling ../corec/corec/helpers/parser/hotkey.c

compiling ../corec/corec/helpers/parser/nodelookup.c

compiling ../corec/corec/helpers/parser/parser2.c

../corec/corec/helpers/parser/parser2.c: In function 'ExprIsToken':

../corec/corec/helpers/parser/parser2.c:2022: warning: format not a string
literal and no format arguments

../corec/corec/helpers/parser/parser2.c: In function 'ExprIsPoint':

../corec/corec/helpers/parser/parser2.c:2407: warning: format '%d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/parser2.c:2407: warning: format '%d' expects
type 'int', but argument 4 has type 'intptr_t *'

compiling ../corec/corec/helpers/parser/strtab.c

compiling ../corec/corec/helpers/parser/strtypes.c

../corec/corec/helpers/parser/strtypes.c: In function 'RFC822ToRel':

../corec/corec/helpers/parser/strtypes.c:504: warning: format '%d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:520: warning: format '%d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:520: warning: format '%d' expects
type 'int', but argument 4 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:520: warning: format '%d' expects
type 'int', but argument 5 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:520: warning: format '%d' expects
type 'int', but argument 6 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:521: warning: format '%d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:521: warning: format '%d' expects
type 'int', but argument 4 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:521: warning: format '%d' expects
type 'int', but argument 5 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:527: warning: format '%d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:529: warning: format '%d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c: In function 'ISO8601ToRel':

../corec/corec/helpers/parser/strtypes.c:597: warning: format '%d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:597: warning: format '%d' expects
type 'int', but argument 4 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:597: warning: format '%d' expects
type 'int', but argument 5 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:598: warning: format '%d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:598: warning: format '%d' expects
type 'int', but argument 4 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:598: warning: format '%d' expects
type 'int', but argument 5 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:599: warning: format '%4d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:599: warning: format '%2d' expects
type 'int', but argument 4 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:599: warning: format '%2d' expects
type 'int', but argument 5 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:600: warning: format '%2d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:600: warning: format '%2d' expects
type 'int', but argument 4 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:600: warning: format '%2d' expects
type 'int', but argument 5 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:611: warning: format '%d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:611: warning: format '%d' expects
type 'int', but argument 4 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:611: warning: format '%d' expects
type 'int', but argument 5 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:612: warning: format '%2d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:612: warning: format '%2d' expects
type 'int', but argument 4 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:612: warning: format '%2d' expects
type 'int', but argument 5 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:615: warning: format '%d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:620: warning: format '%d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:620: warning: format '%d' expects
type 'int', but argument 4 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:621: warning: format '%2d' expects
type 'int', but argument 3 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:621: warning: format '%2d' expects
type 'int', but argument 4 has type 'intptr_t *'

../corec/corec/helpers/parser/strtypes.c:622: warning: format '%2d' expects
type 'int', but argument 3 has type 'intptr_t *'

compiling ../corec/corec/helpers/parser/urlpart.c

compiling ../corec/corec/node/node.c

../corec/corec/node/node.c: In function 'Node_GetDataStart':

../corec/corec/node/node.c:527: warning: unused variable 'p'

compiling ../corec/corec/node/nodetree.c

compiling ../corec/corec/str/str.c

../corec/corec/str/str.c: In function 'vstprintf_s':

../corec/corec/str/str.c:314: warning: integer constant is too large for
'long' type

compiling ../corec/corec/str/str_linux.c

compiling ebmlbinary.c

compiling ebmlcrc.c

compiling ebmldate.c

compiling ebmlelement.c

compiling ebmlmain.c

ebmlmain.c: In function 'EBML_FindNextElement':

ebmlmain.c:523: warning: assignment discards qualifiers from pointer target
type

ebmlmain.c:600: warning: assignment discards qualifiers from pointer target
type

ebmlmain.c: In function 'EBML_FindNextId':

ebmlmain.c:331: warning: 'SizeUnknown' may be used uninitialized in this
function

compiling ebmlmaster.c

ebmlmaster.c: In function 'EBML_MasterSort':

ebmlmaster.c:149: warning: passing argument 4 of 'ArraySortEx' from
incompatible pointer type

../corec/corec/array/array.h:83: note: expected 'arraycmp' but argument is
of type 'int (*)(const struct ebml_element *, const struct ebml_element **,
const struct ebml_element **)'

ebmlmaster.c: In function 'ReadData':

ebmlmaster.c:301: warning: 'CRCDataSize' may be used uninitialized in this
function

ebmlmaster.c:296: warning: 'SubElement' may be used uninitialized in this
function

compiling ebmlnumber.c

ebmlnumber.c: In function 'ReadDataFloat':

ebmlnumber.c:244: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c:244: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c:244: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c:244: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c:252: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c:252: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c:252: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c:252: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c:252: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c:252: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c:252: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c:252: warning: dereferencing type-punned pointer will break
strict-aliasing rules

ebmlnumber.c: In function 'UpdateSizeSignedInt':

ebmlnumber.c:283: warning: integer constant is too large for 'long' type

ebmlnumber.c:283: warning: integer constant is too large for 'long' type

ebmlnumber.c:285: warning: integer constant is too large for 'long' type

ebmlnumber.c:285: warning: integer constant is too large for 'long' type

ebmlnumber.c:287: warning: integer constant is too large for 'long' type

ebmlnumber.c:287: warning: integer constant is too large for 'long' type

ebmlnumber.c: In function 'UpdateSizeInt':

ebmlnumber.c:308: warning: integer constant is too large for 'long' type

ebmlnumber.c:310: warning: integer constant is too large for 'long' type

ebmlnumber.c:312: warning: integer constant is too large for 'long' type

compiling ebmlstring.c

ebmlstring.c: In function 'ReadData':

ebmlstring.c:75: warning: 'Buffer' may be used uninitialized in this
function

compiling ebmlvoid.c

linking ../release/gcc_linux/libebml2.a

make[3]: Leaving directory `/usr/src/mkvalidator-0.3.5/libebml2'

compiling matroska_sem.c

compiling matroskablock.c

compiling matroskamain.c

matroskamain.c: In function 'ClusterTimeChanged':

matroskamain.c:125: warning: unused variable 'GBlock'

matroskamain.c:125: warning: unused variable 'Elt'

matroskamain.c:124: warning: unused variable 'BlockTimecode'

matroskamain.c: In function 'MATROSKA_ClusterSetTimecode':

matroskamain.c:517: warning: unused variable 'BlockTimeCode'

matroskamain.c:516: warning: unused variable 'GBlock'

matroskamain.c:516: warning: unused variable 'Elt'

linking ../release/gcc_linux/libmatroska2.a

make[2]: Leaving directory `/usr/src/mkvalidator-0.3.5/libmatroska2'

make[2]: Entering directory `/usr/src/mkvalidator-0.3.5/libebml2'

make[2]: Nothing to be done for `all'.

make[2]: Leaving directory `/usr/src/mkvalidator-0.3.5/libebml2'

compiling mkvalidator_stdafx.c

compiling mkvalidator.c

mkvalidator.c: In function 'CheckProfileViolation':

mkvalidator.c:432: warning: passing argument 3 of 'EBML_MasterCheckContext'
from incompatible pointer type

../libebml2/ebml/ebml.h:238: note: expected 'ContextCallback' but argument
is of type 'bool_t (*)(struct profile_check *, int,  const tchar_t *, const
struct ebml_element *)'

mkvalidator.c: In function 'main':

mkvalidator.c:1307: warning: integer constant is too large for 'long' type

linking ../release/gcc_linux/mkvalidator

make[1]: Leaving directory `/usr/src/mkvalidator-0.3.5/mkvalidator'

make[1]: Entering directory `/usr/src/mkvalidator-0.3.5/libmatroska2'

make[2]: Entering directory `/usr/src/mkvalidator-0.3.5/libebml2'

make[2]: Nothing to be done for `all'.

make[2]: Leaving directory `/usr/src/mkvalidator-0.3.5/libebml2'

make[1]: Leaving directory `/usr/src/mkvalidator-0.3.5/libmatroska2'

make[1]: Entering directory `/usr/src/mkvalidator-0.3.5/libebml2'

make[1]: Nothing to be done for `all'.

make[1]: Leaving directory `/usr/src/mkvalidator-0.3.5/libebml2'

make: Leaving directory `/usr/src/mkvalidator-0.3.5/mkvalidator'

 

3)      Despite running mkclean, I'm sometimes still getting errors on
subsequent mkvalidator runs (in Windows).  For example:  

 

ERR312: CueEntry Track #1 and timecode 13689634 ms not found

 

I'm not sure of the meaning of this error.    Could anyone elaborate as to
what is wrong with the file?

 

I realize these may be newbie issues, so I appreciate any help.

 

Best,

Jonathan Williams

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.matroska.org/pipermail/matroska-users/attachments/20110710/c432029b/attachment-0002.html>


More information about the Matroska-users mailing list