Кодеков много, разных и хороших.
В вашем случае прежде нужно выяснить - вы пишете файл на диск с FAT32? Если да, то "ругань" неизбежна, в этой файловой системе ограничение на макс. размер файла в 2Гб. Поэтому, по возможности нужно использовать NTFS, там таких ограничений нет.
По кодекам... Самый "железный" способ - использовать Uncompressed RGB. Тогда каждый кадр в файле будет фактически представлен несжатой 24-битной БМПшкой, это системный "кодек", который должен открываться любым плейером в винде. А обрабатывать и сжимать в дивксоподобный кодек будете уже в специальных программах...
И еще раз о размере. Прежде всего попробуйте записать всего пару секунд видео - т.е. следите визуально за процессом рендеринга и останавливайте процесс, когда будет примерно отрендерено (ваш_фпс*колво_сек) кадров.
Если этот "маленький" файл откроется в виртуалдабе - значит, все в порядке.

И если нет возможности использовать NTFS - то захватывайте видео кусками. Размер куска для Uncompressed_RGB_24 высчитывается так -
3 * размер_Х * размер_Y * фпс - это количество байт в одной секунде захваченного видео. Разделите желаемый размер файла на эту цифру, и получите соответствующее количество секунд в одном файле.