Mplayer win console

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Сообщение Girla » 29.11.2005 22:22:26

Здрасьте!
Есть желание запустить 'из под' Lasarus mplayer, но не просто запустить, а поиметь управление. Кидаю на форму Process и два Button.
Пишу Process.CommadLine := 'c:\mplayer\mplayer.exe -slave 1.avi' (-slave - значит что mplayer будет 'слушать' ввод в ожидании команды(типа pause, seek -5, stop...)).
По Click на первый Button будем Process.Execute;
Все работает! Появляется консоль, туды пишуться всякая инфа mplayera, музыка играет, фильмы идут....
Но нужно ж еще управлять.
Например по Click на второй Button писать в Process.Input какую нибуть команду.
Но для этого, насколько я понимаю, нужно в Process.Options включить poUsePipes.
Bот после этого ничего и не работает :(
По первому Button появляеться окно консоли, даже с иконкой mplayer, и... и все!!!
Насколько я понимаю, poUsePipes создает и Input и Output для процесса, и вот какраз в этот Output mplayer и уходит. Но это только мое предположение.
Наставте на путь истинный!
Спасибо.
WinXP, Lasarus 0.9.10beta, mplayer-migwin32-1.0pre7
Girla
 

Сообщение STAKANOV » 29.11.2005 23:01:29

Насколько я понимаю, poUsePipes создает и Input и Output для процесса, и вот какраз в этот Output mplayer и уходит. Но это только мое предположение.
Наставте на путь истинный!

как я понимаю, это и есть путь истинный
в консоли mplayer управляется нажатиями клавиш, соответсвующие коды посылаешь в поток и должно работать (сам не пробывал)

хотя возможно стоит почитать доки к самому mplayer, для GUI интерфейса к нему какой-то способ есть предусмотренный разарботчиками
Аватара пользователя
STAKANOV
энтузиаст
 
Сообщения: 1069
Зарегистрирован: 14.05.2006 21:26:24
Откуда: Зеленоград

Сообщение Girla » 30.11.2005 02:24:59

В доках к mplayerу как раз и пишут, что для того что бы удобно управлять им, его нужно запустить с ключем -slave, тогда он ждет команд(stop, play, pause) со _стандартного_ввода_(stdin в лин.). Повторюсь, проблема №1: если я включаю в случае с mplayerом pipes, то он НЕ РАБОТАЕТ ВООБЩЕ, тоесть может и работает, только изображение и звук выводит не туда куда надо :). Исходя из доки mplayera(stdin), возможно pipes здесь и не причем... Так куда мне писать эти команды? А если его и запускать без этого ключа, то как мне достучаться до его консоли(без специфически виндушных приколов), если с pipes такая ерунда?
Girla
 


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 29

Рейтинг@Mail.ru