Я использую Qt в ubuntu с C ++. Я читаю видео, используя VideoCapture
в openCV
. Но сразу после открытия видеоконтейнера мое приложение не отвечает.
char filename[50];
VideoCapture cap;
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
sprintf(filename,"/media/sf_Shared_with_VM/helicopter_with_stickers.mp4");
cap.open(filename);
printf("\nFile Opened");
}
Здесь файл открыт, но не выводится «Файл открыт».
Это часть большой программы, в которой при нажатии кнопки я должен записывать необработанное видео и накладывать видео. Отображение и хранение видео работает нормально. Но я хочу печатать «Raw record», когда я нажимаю кнопку «record raw», и так для других кнопок. Но он не печатался, если я не нажимал его дважды или не нажимал другую кнопку, то есть он реагирует после одного нажатия кнопки. Я отлаживал его до cap.open(filename);
, потому что сразу после этого я не мог распечатать «Файл открыт».
1 ответ
Вы не видите свое последнее сообщение журнала, потому что не очищаете стандартный поток вывода.
Вы можете сделать это, добавив новую строку после сообщения printf("\nFile Opened\n")
или явно вызвав fflush(stdout)
после последнего printf
.
Похожие вопросы
Новые вопросы
c++
C ++ - это язык программирования общего назначения. Первоначально он был разработан как расширение C и имеет аналогичный синтаксис, но теперь это совершенно другой язык. Используйте этот тег для вопросов о коде (который должен быть) скомпилирован с помощью компилятора C ++. Используйте тег для конкретной версии для вопросов, связанных с конкретной версией стандарта [C ++ 11], [C ++ 14], [C ++ 17], [C ++ 20] или [C ++ 23] и т. Д. .