Member 13740197 Ответов: 0

Как непрерывно воспроизводить видео с помощью mplayer в qt


Привет,


У меня есть требование постоянно воспроизводить видео с помощью mplayer. Я использую Qt 4.7 в среде Linux. Для этого я взял функцию playvideo, как показано ниже.

void Widget::playvideo()
{
   ret = system("mplayer /path/to/video.avi");
   qDebug()<<"ret="<<ret;
   playvideo();
}


Одним нажатием кнопки я вызываю эту функцию playvideo. После системного вызова я снова вызываю функцию playvideo. Здесь функция playvideo вызывает без завершения видео, но мое требование состоит в том, чтобы вызвать функцию playvideo после завершения воспроизведения видео. Я не в состоянии достичь этого. Не могли бы вы помочь мне, как решить эту проблему?

Что я уже пробовал:

void Widget::playvideo()
{
   ret = system("mplayer /path/to/video.avi");
   qDebug()<<"ret="<<ret;
   playvideo();
}

Peter_in_2780

Вы пробовали "mplayer-loop 0 /path/to/video" ?
Согласно документам, -loop 0 будет зацикливать это видео навсегда.
Остановить его-это совсем другой вопрос.

Member 13740197

Спасибо за ответ. Когда я использовал этот цикл-0 работает нормально, но через некоторое время я получаю ниже ошибки. Я использую linux POS-устройство, ниже приведен вывод uname-a
Linux companyname 3.0.35-2666-gbdde708 #43 PREEMPT Sat May 19 10:11:22 IST 2018 armv7l GNU/Linux


Не могли бы вы помочь, как устранить эту ошибку?

Ошибка:
[AO OSS] не может установить аудиоустройство /dev/dsp на выход s16le, пытаясь s16le...
[AO OSS] не может установить аудиоустройство /dev/dsp на выход s16le, пытаясь s16le...
[AO OSS] не может установить аудиоустройство /dev/dsp на выход s16le, пытаясь s16le...
[AO OSS] не может установить аудиоустройство /dev/dsp на выход s16le, пытаясь s16le...

MPlayer прерывается сигналом 2 в модуле: ao2_init
Не удается восстановить текстовый режим: недопустимый аргумент


Peter_in_2780

Извините, но я ничем не могу вам помочь. Вы могли бы сделать это лучше на форуме, связанном с вашим оборудованием и linux.

0 Ответов