Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:
null
. null
. null
, как если бы это был массив. null
, как если бы это был массив. null
как будто это было значение Throwable. Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null
.
Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html
Это старый вопрос. Но если кто-то сталкивается с проблемой в последнее время, используя кодек, который не может получить сохраненное видео. Они могут использовать 0X00000021
в качестве значения кодека для OpenCV 3 и более поздних версий.
Кодек H.264.
Один из них должен работать на вас:
fourcc = cv2.cv.CV_FOURCC(*'H264')
#or
#fourcc = cv2.cv.CV_FOURCC(*'X264')
Однако я должен предупредить вас, что вам, вероятно, потребуется установить библиотеки ffmpeg
и x264
поскольку вы находитесь в Ubuntu, попробуйте выполнить эту команду в терминале:
$ sudo apt-get install ffmpeg x264 libx264-dev
Также ознакомьтесь с этой ссылкой из учебных пособий OpenCV для получения более подробной информации о типах кодов FourCC, доступных для вашей платформы: http://opencv-python-tutroals.readthedocs.org/ru/latest/py_tutorials/py_gui/py_video_display/py_video_display.html#saving-a-video
В приведенной выше ссылке, он говорит, что X264
- это код FourCC, который вы должны использовать, но переключайтесь между ними, пока не получите его на работу.