DOS386
18.04.2009, 10:55 |
Bugs in HX / DKRNL32 (FFMPEG, MPLAYER, MediaInfo) (DOSX) |
I'd like to point a few bugs or compatibility problems with HX / DKRNL32:
1. FFMPEG + derivatives like MENCODER, FFMPEG2THEORA, FFMPEG2DIRAC (except -vo yuv4mpeg in MPLAYER) don't work. Output file is garbage (usually ridiculously small), bitrate is reported as ZERO, and muxing overhead is -100%. All recent "unofficial" binaries (by Sherpya and others) are affected. Same test fine in XP (they still have bugs crashing in other tests in XP too of course).
Evil binary (one of many): http://freefile.kristopherw.us/uploads/temp/ffw2.zi7
Evil input video (encode into AVI, OGG/OGV crashes in XP too):
http://freefile.kristopherw.us/uploads/temp/ffx3yuv.zi7
2. MPLAYER doesn't work anymore (screen output, GUI problem). Compatibility broken on MPLAYER's side. Also working old versions of MPLAYER are very slow, same problem on ME, fine on XP.
3. MediaInfo doesn't work with HX, either crash or silent exit, fine in XP:
http://sourceforge.net/projects/mediainfo --- This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft *** |
Japheth
Germany (South), 23.04.2009, 08:08
@ DOS386
|
Bugs in HX / DKRNL32 (FFMPEG, MPLAYER, MediaInfo) |
> I'd like to point a few bugs or compatibility problems with HX / DKRNL32:
>
> 1. FFMPEG + derivatives like MENCODER, FFMPEG2THEORA, FFMPEG2DIRAC (except
> -vo yuv4mpeg in MPLAYER) don't work. Output file is garbage (usually
> ridiculously small), bitrate is reported as ZERO, and muxing overhead is
> -100%. All recent "unofficial" binaries (by Sherpya and others) are
> affected. Same test fine in XP (they still have bugs crashing in other
> tests in XP too of course).
>
> Evil binary (one of many):
> http://freefile.kristopherw.us/uploads/temp/ffw2.zi7
>
> Evil input video (encode into AVI, OGG/OGV crashes in XP too):
> http://freefile.kristopherw.us/uploads/temp/ffx3yuv.zi7
What's the exact cmd to start this test case? It seems Fabrice Bellard hasn't heart of the SSSO principle yet - OTOH I don't want to find out by "trial and error" amongst 500 options the "correct" combination. --- MS-DOS forever! |
DOS386
26.04.2009, 02:34
@ Japheth
|
GSGO - good source, garbage output vs Fabrice Bellard |
> What's the exact cmd to start this test case?
Heh ?
MediaInfo:
MI --help
^^^ Surprised ?
MI blah.ext
FFMPEG:
ffw2 -i G.YUV G.AVI
G.YUV is the source file, G.AVI is / will be the output file
FFMPEG2THEORA:
fft24 g.yuv
> It seems Fabrice Bellard hasn't heart of the SSSO principle yet
And you did ?
> OTOH I don't want to find out by "trial and error" amongst 500
> options the "correct" combination.
See above, I listed all 500 "correct" (failing with HX) combinations for you --- This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft *** |
Japheth
Germany (South), 26.04.2009, 08:00
@ DOS386
|
GSGO - good source, garbage output vs Fabrice Bellard |
> FFMPEG:
>
> ffw2 -i G.YUV G.AVI
I ran it in DOS, and it's reported that AVICAP32.DLL wasn't found. That sound's pretty comprehensible to me. There is no bug. --- MS-DOS forever! |
Laaca
Czech republic, 26.04.2009, 09:43
@ DOS386
|
GSGO - good source, garbage output vs Fabrice Bellard |
Why you don't use the DOS port of FFMPEG by Michael Kostylev?
BTW:
It is really cool program, I love it. --- DOS-u-akbar! |
DOS386
27.04.2009, 10:03
@ Japheth
|
HX is dead :-( ............. ---> R.I.P. <--- |
Japheth wrote:
> I ran it in DOS, and it's reported that AVICAP32.DLL wasn't found. That
> sound's pretty comprehensible to me. There is no bug.
I have both AVICAP32.DLL and AVIFIL32.DLL, they are NOT used and NOT source of the problem. So YES, there is a BUG in HX preventing those to run correctly in DOS. Also, MediaInfo doesn't need those 2 and still doesn't run.
Laaca wrote:
> Why you don't use the DOS port of FFMPEG by Michael Kostylev?
I can also use it, but a few problems:
1. Last version from 2008-Dec, no updates anymore
2. Theora encoding is broken
3. Not useful to replace FFMPEG2THEORA or FFMPEG2DIRAC --- This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft *** |
Khusraw
Bucharest, Romania, 27.04.2009, 10:12 (edited by Khusraw, 27.04.2009, 10:54)
@ DOS386
|
HX is dead :-( ............. ---> R.I.P. <--- |
> I can also use it, but a few problems:
>
> 1. Last version from 2008-Dec, no updates anymore
> 2. Theora encoding is broken
> 3. Not useful to replace FFMPEG2THEORA or FFMPEG2DIRAC
The latest version of Michael Kostylev's port is dated 5 March 2009 10 January 2009. --- Glory to God for all things |
DOS386
27.04.2009, 10:16
@ Khusraw
|
HX is dead :-( ............. ---> R.I.P. <--- | Mik's page |
> The latest version of Michael Kostylev's port is dated 5 March 2009.
Where did you get it ?
http://mik.mkw.ru/dos-stuff/ -> 410 Gone nginx/0.7.24
http://mik.dyndns.org/dos-stuff/ -> Can't resolve address
http://glennmcc.org/download/mik/ -> Version from 2008-Dec --- This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft *** |
Khusraw
Bucharest, Romania, 27.04.2009, 10:41
@ DOS386
|
HX is dead :-( ............. ---> R.I.P. <--- | Mik's page |
> Where did you get it ?
From Michael Kostylev's page, but now is no longer available.
If you are interested, I uploaded it here.
EDIT: Actually it dates from January 10, not from March 5, as you can clearly see. --- Glory to God for all things |
Japheth
Germany (South), 27.04.2009, 11:28
@ DOS386
|
HX is dead :-( ............. ---> R.I.P. <--- |
> I have both AVICAP32.DLL and AVIFIL32.DLL, they are NOT used and
> NOT source of the problem. So YES, there is a BUG in HX
> preventing those to run correctly in DOS.
I copied AVICAP32.DLL and AVIFIL32.DLL from \WinXP\system32 to the current directory and FFW2.EXE still failed to load due to unresolved externals in AVICAP32.DLL. So I gave up.
> Also, MediaInfo doesn't need those 2 and still doesn't run.
I didn't try MediaInfo yet. --- MS-DOS forever! |
DOS386
27.04.2009, 14:50
@ Japheth
|
FFMPEGxxxx on HX: spectacular progress in BUG-fixing |
> I copied AVICAP32.DLL and AVIFIL32.DLL from \WinXP\system32
Bad idea
> to the current directory and FFW2.EXE still failed to load due to
> unresolved externals in AVICAP32.DLL. So I gave up.
AVI.ZIP Download now (769 Bytes) --- This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft *** |
rr
Berlin, Germany, 28.04.2009, 20:24
@ DOS386
|
FFMPEGxxxx on HX: spectacular progress in BUG-fixing |
> > I copied AVICAP32.DLL and AVIFIL32.DLL from \WinXP\system32
>
> Bad idea
Please explain! --- Forum admin |
Japheth
Germany (South), 29.04.2009, 08:31
@ DOS386
|
FFMPEGxxxx on HX: spectacular progress in BUG-fixing |
> > to the current directory and FFW2.EXE still failed to load due to
> > unresolved externals in AVICAP32.DLL. So I gave up.
>
>
>
> AVI.ZIP Download
> now (769 Bytes)
Self-made Win32 binaries - was this little detail not worth to be mentioned in your first post?
Anyways, ffw2.exe runs now in DOS and the file size of the output file G.AVI is indeed significantly smaller than in Windows.
Running it with a debug version of DKRNL32.DLL shows that ffw2 calls the Win32 API function SetFilePointer() with an 'origin' parameter value of 10000h. This is invalid, SetFilePointer() is expected to return -1 then, but DKRNL32 currently doesn't verify this param and calls DOS with the low byte of 'origin' and returns a 'valid' result. --- MS-DOS forever! |
Zyzzle
01.05.2009, 00:29
@ Khusraw
|
HX is dead :-( ............. ---> R.I.P. <--- | Mik's page |
> > Where did you get it ?
>
> From Michael Kostylev's page, but now is no longer available.
> If you are interested, I uploaded it
> here.
>
> EDIT: Actually it dates from January 10, not from March 5, as you can
> clearly see.
I can't access your download link, the connection always times out. Is there anyone else who has a link to the Jan 10th 2009 version? Latest I can find for the dos port is Dec 25th 2008. |
Khusraw
Bucharest, Romania, 01.05.2009, 00:55
@ Zyzzle
|
HX is dead :-( ............. ---> R.I.P. <--- | Mik's page |
> I can't access your download link, the connection always times out. Is
> there anyone else who has a link to the Jan 10th 2009 version? Latest I
> can find for the dos port is Dec 25th 2008.
Try again. I just tested the link and it still works without any problem. --- Glory to God for all things |
Laaca
Czech republic, 01.05.2009, 08:34
@ Khusraw
|
HX is dead :-( ............. ---> R.I.P. <--- | Mik's page |
> Try again. I just tested the link and it still works without any problem.
I have to same problem. The download doesn't work for me. Could you to upload it to some another place please? --- DOS-u-akbar! |
Khusraw
Bucharest, Romania, 01.05.2009, 10:39
@ Laaca
|
HX is dead :-( ............. ---> R.I.P. <--- | Mik's page |
> I have to same problem. The download doesn't work for me. Could you to
> upload it to some another place please?
Very strange, I can download it without any problems with both Opera and Wget.
But for your convenience, I reuploaded it here. --- Glory to God for all things |
Laaca
Czech republic, 01.05.2009, 14:16
@ Khusraw
|
HX is dead :-( ............. ---> R.I.P. <--- | Mik's page |
> But for your convenience, I reuploaded it
> here.
Thanks! This link worked without problems. --- DOS-u-akbar! |
DOS386
05.05.2009, 14:23
@ Japheth
|
FFMPEG on HX: imbecility on both sides | MinGW garbage I/O |
Laaca wrote:
> I have to same problem. The download doesn't work for me.
> Could you to upload it to some another place please?
The original link is dead. But this "new" version has very little value anyway, just 10 days younger and 2 important fixes are NOT included:
- FFMPEG 0.5 from 2009-Mar
- Theora encoding fix (was NOT fixed until 2009-Mar, no idea when if ever ...)
Japheth wrote:
> Self-made Win32 binaries - was this little detail not worth to be mentioned in your first post?
Sorry forgot them ... I had been having them for centuries in my "DOS" directory ... oops, look at this
> Running it with a debug version of DKRNL32.DLL
Any chance to get this debug version included in next HX ?
> shows that ffw2 calls the Win32 API function SetFilePointer() with an 'origin'
> parameter value of 10000h. This is invalid
excellent BUG of FFMPEG or MinGW
> SetFilePointer() is expected to return -1 then,
> but DKRNL32 currently doesn't verify this param and calls DOS with the low
> byte of 'origin' and returns a 'valid' result.
I see
BTW, source of DKRNL32 already has one funny hack preventing stupid apps or compilers to seek below ZERO, while DOS is too stupid too to reject such NO-GO's ... what compilers or apps are affected by this BUG ?
After having notoriously criticized DGJPP for garbage I/O and advertising MinGW in the past the time has come to have a look on MinGW now for possible garbage I/O activity ... but I need a debug version of DKRNL32 --- This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft *** |
ecm
Düsseldorf, Germany, 05.05.2009, 17:52
@ DOS386
|
Signed Seeking System Operation - SSSO ? |
> preventing stupid apps or compilers to seek below zero, while DOS is too
> stupid too to reject such no-goes
This is not a bug, it's a feature. Seeking "below zero" actually wraps around to a high position, so -1 means 4 GiB less one byte. It's all about "signed" and unsigned values. --- l |
Japheth
Germany (South), 05.05.2009, 21:18
@ DOS386
|
FFMPEG on HX: imbecility on both sides | MinGW garbage I/O |
> > Running it with a debug version of DKRNL32.DLL
>
> Any chance to get this debug version included in next HX ?
No, but you can create it on your own. In the DKRNL32 directory, enter
NMAKE debug=1
(one location where to get NMAKE is http://website.masm32.com/microsft.htm) --- MS-DOS forever! |
DOS386
06.05.2009, 05:33
@ Japheth
|
Debug version of DKRNL32 | NMAKEUP | Linker |
> > Any chance to get this debug version included in next HX ?
> No
> but you can create it on your own.
Are you sure ? I lack the proprietary tools required for this task
> In the DKRNL32 directory, enter
> NMAKE debug=1
> (one location where to get NMAKE is website.masm32.com/microsoft.htm
Thanks, but:
1. I lack the license for NMAKEUP
2. Even I got a "good" assembler (is JAWASM good enough ???) and NMAKEUP (see [1]), there is still one important point missing: the LINKER --- This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft *** |
DOS386
06.05.2009, 05:39
@ ecm
|
Signed Seeking System Operation - SSSO ? |
> This is not a bug, it's a feature.
As usual
> Seeking "below zero" actually wraps around to a high position,
> so -1 means 4 GiB less one byte. It's all about "signed" and unsigned
OK, you are probably right here, so seeking from 0.5 GiB by -1 GiB AKA +3 GiB should go up to 3.5 GiB in DOS ... and in Win32 use SetFilePointerEx ? --- This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft *** |
Japheth
Germany (South), 06.05.2009, 07:09
@ DOS386
|
Debug version of DKRNL32 | NMAKEUP | Linker |
> Thanks, but:
>
> 1. I lack the license for NMAKEUP
Ok, then download VC++ EE 2008. This also includes a copy of nmake. IIRC the download is just about 300 MB.
> 2. Even I got a "good" assembler (is JAWASM good enough ???) and NMAKEUP
> (see [1]), there is still one important point missing: the LINKER
VC++ EE 2008 also includes a LINK.EXE.
Optionally just modify Makefile to make it compatible with WMake and WLink. Should be no problem. --- MS-DOS forever! |
DOS386
09.05.2009, 08:57 (edited by DOS386, 09.05.2009, 09:13)
@ Japheth
|
Debug version of DKRNL32 | NMAKEUP | Linker | HX 2.15 |
rr wrote:
> > > I copied AVICAP32.DLL and AVIFIL32.DLL from \WinXP\system32
> > Bad idea
> Please explain!
The idea IS bad and there are at least 3 reasons why:
1. ways too obvious to justify further wasting time and bloating forum database with it (Hint: (C) )
2. TIY and see
3. There are better versions available
Japheth wrote:
> Ok, then download VC++ EE 2008. This also includes a copy of nmake.
> IIRC the download is just about 300 MB
> VC++ EE 2008 also includes a LINK.EXE
With all its (technical and legal) flaws and its infamous BUG's ...
> Optionally just modify
who ?
> Makefile to make it compatible with WMake and WLink. Should be no problem.
?????????? really ??????????
Japheth wrote (almost 1 year ago):
> I want 2 things to be added for 2.15
> 1. Making DKRNL32 aware of multi-core cpus and use them - optionally
> 2. Supply a JWasm/Wlink Makefile for at least HDPMI, DPMILDR and the
> four basic Win32 emulation dlls (DKRNL32, DADVAPI, DUSER32 and DGDI32).
> Regretably current Wlink isn't really usable for linking dlls with huge amounts
> of exports. It might be necessary to make a JWlink...
Voila
>
What's the point of only 3 happy smilies ???
Oops, I see: above you suggested me to download 300 MiB of wormed crap and now 3 happy smiles, so 100 MiB of bloat cost just 1 smilie.
Accordingly, marcov's FreePASCAL costs only 1/2 happy smilie:
And the biggest file I have (downloaded in DOS, 21 GiB) costs just 210 happy smilies:
PS: Sherpya released new Win32 binaries of MPLAYER, MENCODER, and FFMPEG on 2009-04-29. Theora encoding is NOT fixed (now garbage output also in XP instead of PageFault), no retest of seek bug yet. --- This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft *** |
Rugxulo
Usono, 10.05.2009, 03:34
@ Japheth
|
Debug version of DKRNL32 | NMAKEUP | Linker |
> VC++ EE 2008 also includes a LINK.EXE.
>
> Optionally just modify Makefile to make it compatible with WMake and
> WLink. Should be no problem.
I know you hate suggestions, but I'd recommend using something a bit more friendly like CBuild (which builds with MSVC or DJGPP) and/or saving the output of "nmake -n" so that mere mortals can understand what is supposed to happen. |
Japheth
Germany (South), 10.05.2009, 07:38
@ Rugxulo
|
Why there are some hurdles... |
> I know you hate suggestions, ...
I love suggestions and would like to fulfill everyone's wishes and be everybody's darling, but sometimes I have to be a little rigid and say 'No', like a caring father does to his unwise child.
> ...but I'd recommend using something a bit more
> friendly like CBuild
> (which builds with MSVC or DJGPP) and/or saving the output of "nmake -n"
> so that mere mortals can understand what is supposed to happen.
No. The little hurdles in HX's make procedure are "by design", it's an aptitude test. They are small, tiny, almost not worth to be mentioned, but they are sufficient to keep the pure "Dampfplauderers" (a beautiful German word which I don't want to translate because it most likely will become a very lame translation) out. --- MS-DOS forever! |
DOS386
23.05.2009, 02:10
@ Japheth
|
Why there are some "pure Dampfplauderers" ... |
> they are sufficient to keep the pure "Dampfplauderers" (a beautiful
> German word which I don't want to translate because it most
DAMPFPLAUDERER = A damn evil person lacking the proprietary malware from MacroSoft either completely or at least a valid license for them --- This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft *** |
DOS386
23.05.2009, 10:24
@ Japheth
|
origin_type=$0001'0000 | The chief DAMPFPFLAUDERER fixed it |
> Running it with a debug version of DKRNL32.DLL shows that ffw2 calls the
> Win32 API function SetFilePointer() with an 'origin' parameter value of
> 10000h. This is invalid, SetFilePointer() is expected to return -1 then,
> but DKRNL32 currently doesn't verify this param and calls DOS with the low
> byte of 'origin' and returns a 'valid' result.
Fixed:
http://freefile.kristopherw.us/uploads/temp/dkrnl32.zip (43 KiB)
http://freefile.kristopherw.us/uploads/temp/avi.zip (769 Bytes)
--- This is a LOGITECH mouse driver, but some software expect here
the following string:*** This is Copyright 1983 Microsoft *** |
rr
Berlin, Germany, 23.05.2009, 18:28
@ DOS386
|
Why there are some "pure Dampfplauderers" ... |
> > they are sufficient to keep the pure "Dampfplauderers" (a beautiful
> > German word which I don't want to translate because it most
>
> DAMPFPLAUDERER = A damn evil person lacking the proprietary malware
> from MacroSoft either completely or at least a valid license for them
Your style is so special again, that I recommend you writing to your own board. --- Forum admin |
Japheth
Germany (South), 24.05.2009, 22:36
@ DOS386
|
origin_type=$0001'0000 | The chief DAMPFPFLAUDERER fixed it |
> > Running it with a debug version of DKRNL32.DLL shows that ffw2 calls the
> > Win32 API function SetFilePointer() with an 'origin' parameter value of
> > 10000h. This is invalid, SetFilePointer() is expected to return -1
> then,
> > but DKRNL32 currently doesn't verify this param and calls DOS with the
> low
> > byte of 'origin' and returns a 'valid' result.
>
> Fixed:
>
> http://freefile.kristopherw.us/uploads/temp/dkrnl32.zip (43 KiB)
> http://freefile.kristopherw.us/uploads/temp/avi.zip (769 Bytes)
C-coool! Did you use MS link to create the binary? --- MS-DOS forever! |
marcov
25.05.2009, 14:54
@ DOS386
|
Why there are some "pure Dampfplauderers" ... |
> > they are sufficient to keep the pure "Dampfplauderers" (a beautiful
> > German word which I don't want to translate because it most
>
> DAMPFPLAUDERER = A damn evil person lacking the proprietary malware
> from MacroSoft either completely or at least a valid license for them
I think you just demonstrated Japeth's point. |