Hola mira yo lo probe y no tengo instalado ese codec (uso un reproductor con codecs internos) y ademas solo tira error con algunos codecs, debe ser que cada codec tenga una propia "inicialización"?
Intenté debuguear pero al menos la inicialización lo hace bien, llegue hasta la parte donde haces un SetWindowLong y inicias a obtener el RawInput (de ahí el vb depurando me crashea)
Con Microsoft Video 1, CinePack Codec By Radius y Cuadros completos (sin comprimir) me funcionó (el que mejor funciona es el CinePack

)
PD: Tambien podrias poner un instalador del codec junto al ejecutable

Por cierto, fijate que parece que tieme TimeOut a la hora de elegir codec. Yo lo deje ahí puesto para elegir los codecs (para ver el nombre) y lo quise probar otra vez y salto 3 veces el mismo cartel de error, quizás tenga una manera asincronica
Re Edit: Perdon, estaba debugueando con un codec que si funcionaba x'D
El error lo tira en AVIStreamSetFormat, en el Sub CreateAVIFile
Tira un error nº &H80044066 y según google es "AVIERR_BADFORMAT" (
Fuente no es vb, pero se entiende)
Y hasta ahí llegué

Ah por cierto,hay veces que no podes grabar 2 veces seguidas, me termina el programa con un error. Pero solo a veces :/