Я хочу использовать веб-камеру USB (в небольшом приложении C ++ / OpenCV) и вызывать ее из скрипта PHP. Мое тестовое приложение выглядит так:
int main( int argc, char **argv ) { cv::VideoCapture C( 0 ); cout << "C.isOpened() = " << boolalpha << C.isOpened() << endl; return 0; }
Сценарий PHP выглядит так:
<?php exec( escapeshellcmd( '/thepath/theapp' ), $output, $result ); var_dump( $output ); ?>
Когда я вызываю это приложение непосредственно из командной строки, он возвращает true .
Когда я вызываю приложение через php, как этот php -f /the_php_script.php
он возвращает true .
Когда я вызываю приложение через php, вызванное AJAX из html-файла (с помощью кнопки), он проходит через Apache и затем возвращает false .
Итак, мое приложение работает нормально. Мой php-скрипт отлично работает. Но есть разрешение или что-то вроде этого, которое предотвращает php через Apache для доступа к веб-камере (для инициализации его с помощью библиотеки OpenCV), но разрешения достаточно, чтобы приложение могло работать .
Может кто-нибудь мне помочь? Есть идеи?
Благодаря!
ИЗМЕНИТЬ 1:
Следуя предложению, я попытался использовать php-скрипт для запуска моего приложения без использования AJAX. Я получил те же результаты, то есть OpenCV не может инициализировать веб-камеру USB на сервере.