Old mjpeg codec bug?
2 posters
Page 1 of 1
Old mjpeg codec bug?
I'm using an old Matrox Digisuite card to digitize analog video. It creates AVI files that are 720x486, and they display properly in VirtualDub 10 on the vintage Windows 2000 system they're captured on, and the playback looks correct when viewed on a CRT. However, when opened in VirtualDub2 or Hybrid on a Windows 10 or 11 system with K-Lite Codec Pack 18.1.8 Mega installed, they open up at a resolution of 720x496 and stop playback at the 2GB mark. That is, if I open a 9.5GB Matrox m-jpeg AVI with around 57,000 frames, the video freezes at around frame 12,000 in VirtualDub2, but the playback bar and audio keep moving. Divide 9.5GB by 57,000 and multiply by 12,000 and you get 2GB. That number doesn't seem like a coincidence. The same file plays in its entirety at 720x486 if I save it out to HuffYUV on the Win2K source machine (Lagarith won't install, even 1327, which is supposed to work in Win2K) and open it on a Win10 or 11 machine. The extra 10 pixels in height not only cause the native BFF field order to flip, it leaves everything looking jagged. Someone else posted a similar mjpeg issue back in 2017 and the symptoms sound like mine.
Matrox used to offer software-based VFW codecs for all of their hardware, but Windows 8 was the last supported OS, so the installer won't even run.
I *could* recompress every mjpeg file I capture on the source machine, but it's an ancient 2.8Ghz P4 and it takes forever. (I do have more modern gear like a Micomsoft SC-512 that captures straight to Lagarith under Windows 10, and those files look fine, but to my eyes, the Digisuite produces much better captures with its TBC.)
Any advice is appreciated. Sorry for the super-long post.
Here is the file info from MediaInfo:
Format : AVI
Format/Info : Audio Video Interleave
Format profile : OpenDML
File size : 9.08 GiB
Duration : 31 min 49 s
Overall bit rate : 40.8 Mb/s
Frame rate : 29.970 FPS
Writing application : Matrox MQSink Filter . Format: 6. Build: 2.0.0.271
Here's the log dump from the Codec Tweak Tool as advised in the sticky.
[quote ]
Codec Tweak Tool | Log file | Generated at 2024-04-10 19:45:37
##### System Information #####
OS: Windows 11 Home (10.00.22631) (x64)
CPU name: AMD Ryzen 7 6800H with Radeon Graphics
CPU details: 3194 MHz | 16 core(s) | Family 25 Model 68 Stepping 1
Memory: 15648 MB
Screen size: 2560x1440 (32bits) (165Hz) (150%)
GPU 1: AMD Radeon Graphics
VendorID: 1002, DeviceID: 1681, SubSys: 1b7c1043
GPU memory: 512 MB
GPU driver: aticfx64.dll (Version 31.0.12028.9001) (11-1-2022)
GPU 2: NVIDIA GeForce RTX 3060 Laptop GPU
VendorID: 10de, DeviceID: 2520, SubSys: 1b7c1043
GPU memory: 6144 MB
GPU driver: nvldumdx.dll (Version 31.0.15.5123) (1-18-2024) (NV 551.23)
Audio device: ASUS Utility
Audio driver: igovsd.sys (Version 3.0.4.0) (9-22-2020)
##### K-Lite Codec Pack #####
KLCP version: 18.1.8 (base 18.0.5)
KLCP type: mega
Speaker conf: 2.0
MPC renderer: EVR CP
MPC subs: ISR
MPC audio: Internal Audio Renderer
MPC decoder: h264=1 hevc=1 vp9=1 vc1=1 mpeg2=1
##### Decoder Settings #####
LAV Video:
H264=DXVA2CB HEVC=DXVA2CB VP9=DXVA2CB VC1=0 MPEG2=1 MPEG4=1 WMV3=0
LAV Audio:
MP3=1 AC3=1 DTS=1 DTSHD=1 EAC3=1 TRUEHD=1 AAC=1 Vorbis=1 LPCM=1 WMA=0
AC3Filter:
AC3=U DTS=U MP3=U AAC=U TrueHD=U Vorbis=U PCM=U SPDIF_IN=U SPDIF_OUT=U
##### DirectShow Filters (32-bit) #####
Description: Silicondust HDHomeRun WMP Plugin
File name: c:\program files\silicondust\hdhomerun\directshow-x86\hdhomerun_wmp.ax
CLSID: {96C78455-6390-4C2D-B574-35AC2E14C290}
Merit: 00400000 = MERIT_UNLIKELY
Description: AC3Filter
File name: c:\program files (x86)\audials\audials 2022\ac3filter.ax
CLSID: {A753A1EC-973E-4718-AF8E-A3F554D45C44}
Merit: 00400000 = MERIT_UNLIKELY
(A total of 73 filters, 2 shown, 71 hidden)
##### DirectShow Filters (64-bit) #####
Description: Silicondust HDHomeRun WMP Plugin
File name: c:\program files\silicondust\hdhomerun\directshow-x64\hdhomerun_wmp.ax
CLSID: {96C78455-6390-4C2D-B574-35AC2E14C290}
Merit: 00400000 = MERIT_UNLIKELY
(A total of 73 filters, 1 shown, 72 hidden)
##### ICM Class Manager (32-bit) #####
(A total of 2 filters, 0 shown, 2 hidden)
##### ICM Class Manager (64-bit) #####
(A total of 2 filters, 0 shown, 2 hidden)
##### Default source filters (32-bit) #####
.avs {D3588AB0-0781-11CE-B03A-0020AF0BA770} AVI/WAV File Source
(A total of 65 default source filters, 1 shown, 64 hidden)
##### Default source filters (64-bit) #####
(A total of 64 default source filters, 0 shown, 64 hidden)
##### ACM and VFW Codecs (32-bit) #####
Description: RivaTuner Video Codec
ID: VIDC.RTV1
File name: c:\windows\syswow64\rtvcvfw32.dll
(A total of 19 codecs, 1 shown, 18 hidden)
##### ACM and VFW Codecs (64-bit) #####
Description: RivaTuner Video Codec
ID: VIDC.RTV1
File name: c:\windows\system32\rtvcvfw64.dll
(A total of 18 codecs, 1 shown, 17 hidden)
[/quote ]
Matrox used to offer software-based VFW codecs for all of their hardware, but Windows 8 was the last supported OS, so the installer won't even run.
I *could* recompress every mjpeg file I capture on the source machine, but it's an ancient 2.8Ghz P4 and it takes forever. (I do have more modern gear like a Micomsoft SC-512 that captures straight to Lagarith under Windows 10, and those files look fine, but to my eyes, the Digisuite produces much better captures with its TBC.)
Any advice is appreciated. Sorry for the super-long post.
Here is the file info from MediaInfo:
Format : AVI
Format/Info : Audio Video Interleave
Format profile : OpenDML
File size : 9.08 GiB
Duration : 31 min 49 s
Overall bit rate : 40.8 Mb/s
Frame rate : 29.970 FPS
Writing application : Matrox MQSink Filter . Format: 6. Build: 2.0.0.271
Here's the log dump from the Codec Tweak Tool as advised in the sticky.
[quote ]
Codec Tweak Tool | Log file | Generated at 2024-04-10 19:45:37
##### System Information #####
OS: Windows 11 Home (10.00.22631) (x64)
CPU name: AMD Ryzen 7 6800H with Radeon Graphics
CPU details: 3194 MHz | 16 core(s) | Family 25 Model 68 Stepping 1
Memory: 15648 MB
Screen size: 2560x1440 (32bits) (165Hz) (150%)
GPU 1: AMD Radeon Graphics
VendorID: 1002, DeviceID: 1681, SubSys: 1b7c1043
GPU memory: 512 MB
GPU driver: aticfx64.dll (Version 31.0.12028.9001) (11-1-2022)
GPU 2: NVIDIA GeForce RTX 3060 Laptop GPU
VendorID: 10de, DeviceID: 2520, SubSys: 1b7c1043
GPU memory: 6144 MB
GPU driver: nvldumdx.dll (Version 31.0.15.5123) (1-18-2024) (NV 551.23)
Audio device: ASUS Utility
Audio driver: igovsd.sys (Version 3.0.4.0) (9-22-2020)
##### K-Lite Codec Pack #####
KLCP version: 18.1.8 (base 18.0.5)
KLCP type: mega
Speaker conf: 2.0
MPC renderer: EVR CP
MPC subs: ISR
MPC audio: Internal Audio Renderer
MPC decoder: h264=1 hevc=1 vp9=1 vc1=1 mpeg2=1
##### Decoder Settings #####
LAV Video:
H264=DXVA2CB HEVC=DXVA2CB VP9=DXVA2CB VC1=0 MPEG2=1 MPEG4=1 WMV3=0
LAV Audio:
MP3=1 AC3=1 DTS=1 DTSHD=1 EAC3=1 TRUEHD=1 AAC=1 Vorbis=1 LPCM=1 WMA=0
AC3Filter:
AC3=U DTS=U MP3=U AAC=U TrueHD=U Vorbis=U PCM=U SPDIF_IN=U SPDIF_OUT=U
##### DirectShow Filters (32-bit) #####
Description: Silicondust HDHomeRun WMP Plugin
File name: c:\program files\silicondust\hdhomerun\directshow-x86\hdhomerun_wmp.ax
CLSID: {96C78455-6390-4C2D-B574-35AC2E14C290}
Merit: 00400000 = MERIT_UNLIKELY
Description: AC3Filter
File name: c:\program files (x86)\audials\audials 2022\ac3filter.ax
CLSID: {A753A1EC-973E-4718-AF8E-A3F554D45C44}
Merit: 00400000 = MERIT_UNLIKELY
(A total of 73 filters, 2 shown, 71 hidden)
##### DirectShow Filters (64-bit) #####
Description: Silicondust HDHomeRun WMP Plugin
File name: c:\program files\silicondust\hdhomerun\directshow-x64\hdhomerun_wmp.ax
CLSID: {96C78455-6390-4C2D-B574-35AC2E14C290}
Merit: 00400000 = MERIT_UNLIKELY
(A total of 73 filters, 1 shown, 72 hidden)
##### ICM Class Manager (32-bit) #####
(A total of 2 filters, 0 shown, 2 hidden)
##### ICM Class Manager (64-bit) #####
(A total of 2 filters, 0 shown, 2 hidden)
##### Default source filters (32-bit) #####
.avs {D3588AB0-0781-11CE-B03A-0020AF0BA770} AVI/WAV File Source
(A total of 65 default source filters, 1 shown, 64 hidden)
##### Default source filters (64-bit) #####
(A total of 64 default source filters, 0 shown, 64 hidden)
##### ACM and VFW Codecs (32-bit) #####
Description: RivaTuner Video Codec
ID: VIDC.RTV1
File name: c:\windows\syswow64\rtvcvfw32.dll
(A total of 19 codecs, 1 shown, 18 hidden)
##### ACM and VFW Codecs (64-bit) #####
Description: RivaTuner Video Codec
ID: VIDC.RTV1
File name: c:\windows\system32\rtvcvfw64.dll
(A total of 18 codecs, 1 shown, 17 hidden)
[/quote ]
DaveF71- Posts : 3
Join date : 2024-04-11
Re: Old mjpeg codec bug?
Standard AVI files have a 2GB size limit. OpenDML extends that, and VirtualDub should support that, so try with original VirtualDub instead of modded variants.
Try running installer in Windows 7 compatibility mode. Use 32-bit VirtualDub.
Try running installer in Windows 7 compatibility mode. Use 32-bit VirtualDub.
Re: Old mjpeg codec bug?
Okay, the mjpeg files opened and played normally in VirtualDub 1.10.4 on my Win11 laptop. It never occurred to me that VirtualDub2 might handle files differently. I had already been using the 32-bit versions of the apps. The lagarith-encoded files from the other capture device are also AVIs that are 10+ GBs in size and they open and play in their entirety in all applications, as do lagarith-reencoded AVI exports from VirtualDub 1.10.4.
I tried the mjpeg files in other editors and encoders - Davinci Resolve, Hybrid, Handbrake, etc. -- and they all open them at 720x496, so that still points to a deeper issue.
I got the Matrox VFW software codecs installed (v2.0.0.11381) using compatibility mode, but, again, the files are still seen as 720x496 in everything but VirtualDub 1.10.4.
In 1.10.4, the File Information window now specifically lists "Matrox M-JPEG (playback only)" next to Decompressor.
In 2, it just says "mjpeg" next to Video Codec in that window.
In the KLite Codec Tweak Tool next to the MJPEG decoder entries, there's only two options - libavcodec and disable. Is there a way to force it to use the Matrox one?
I tried the mjpeg files in other editors and encoders - Davinci Resolve, Hybrid, Handbrake, etc. -- and they all open them at 720x496, so that still points to a deeper issue.
I got the Matrox VFW software codecs installed (v2.0.0.11381) using compatibility mode, but, again, the files are still seen as 720x496 in everything but VirtualDub 1.10.4.
In 1.10.4, the File Information window now specifically lists "Matrox M-JPEG (playback only)" next to Decompressor.
In 2, it just says "mjpeg" next to Video Codec in that window.
In the KLite Codec Tweak Tool next to the MJPEG decoder entries, there's only two options - libavcodec and disable. Is there a way to force it to use the Matrox one?
DaveF71- Posts : 3
Join date : 2024-04-11
Re: Old mjpeg codec bug?
I think you are referring to settings in ffdshow VFW interface? Select "disable" there.
Or just disable ffdshow entirely because you do not need it at all.
Handbrake uses its own internal codecs (FFmpeg based). Davinci Resolvea and Hybrid probably do as well. VirtualDub2 might also be using internal codecs.
Or just disable ffdshow entirely because you do not need it at all.
Handbrake uses its own internal codecs (FFmpeg based). Davinci Resolvea and Hybrid probably do as well. VirtualDub2 might also be using internal codecs.
Re: Old mjpeg codec bug?
The ffdshow window was accessed through the KLite config utility, so I assumed it was part of the package.
Anyway, I found that VirtualDub2 will load the files correctly if I use AviSynth. That's a rabbit hole I crawled out of 15 years ago, but I guess it's time to dive back in and see what's changed.
Anyway, I found that VirtualDub2 will load the files correctly if I use AviSynth. That's a rabbit hole I crawled out of 15 years ago, but I guess it's time to dive back in and see what's changed.
DaveF71- Posts : 3
Join date : 2024-04-11
Page 1 of 1
Permissions in this forum:
You cannot reply to topics in this forum