есть задача, в mjpegtools входит комадна lavrec, когда эта команда работает, то она пишет видуо файл с устройства видеозахвата. Необходимо во время записи делать скриншоты с экрана. Для этого(для mjpegtools-1.6.1) в строке 734 была закоментирована строчка settings->stats->num_frames += count; и вставлен вместо неё следующий код: /* Update counters. Maybe frame its written only once, * but size*count is the save guess */ // settings->stats->num_frames += count; settings->bytes_output_cur += size*count; while (count-- > 0) { if (settings->stats->num_frames++ % 10 == 0) { lav_file_t *jpg_file; jpg_file = lav_open_output_file("/mnt/ramdisk/1/snapshot.jpg", 'j', settings->width, settings->height,Y4M_ILACE_NONE, (info->video_norm==1? 30000.0/1001.0 : 25.0), 0, 0, 0); lav_write_frame(jpg_file, buff, size, 1); lav_close (jpg_file); } } /* * If the user has specified flushing of file buffers * flush every time the specified number of unflushed frames has * been reached. */ Соовтетственно, этим кодом каждые 10 фреймов на диск в оперативной памяти сохраняется фрейм. Ну и дальше с ним что то делается и т.п. Ну, вобщем, иногда происходит kernel panic выражающийся в том, что мигают три кнопки на клавиатуре и все остальное висит. Если в этот момент записи запущены Иксы и в них xawtv для просмотра того, что пишется, то картинка с видеокамеры замечательно просматривается и записывается. Железо не виновато(было сменено три компьютера) точно... но как отловить этот кернел-паник - я не знаю, короче, че делать, куда рыть куда копать... по видимому, происходит утечка памяти гдето, но где - черт его знает. Спасибо!
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум запуск стороннеей программы (2004)