LINUX.ORG.RU

g_main_loop_run()

 , ,


2

3

Всем добрый день! Пишу приложение на gstreamer. Не могу понять как работает обработчик g_main_loop_run(Mainloop). Он очень схож с gtk основным циклом. Я пытаюсь реализовать проверки времени. Однако после ухода в бесконечный цикл никакие условия не работают. Думаю сдесь нужно через колбэки. Только как это сделать, пож объясните.


26 декабря 2018 г.

Пошло не мало времени

я сейчас тоже начинаю копать в эту сторону. И у меня те же грабли. Запускаю аудиострим на другой хост одновременно с его записью.

Не пойму как послать из программы EOS в поток чтобы остановить запись, но при этом чтобы не рушился весь аудио стрим или сделать так, чтобы весь стрим останавливался, файл записи корректно закрывался, но без разрушения всего конвейера. После чего можно бы было оперативно его (конвеер) опять запустить на проигрывание и запись.

Почему - то сигналы -GIGUSR1 и -SIGUSR2 из другого терминала одинаково приводят к прекращению конвейера с сообщением «Определяемый пользователем сигнал ...»

Бесконечный цикл меня тоже смущает. Мне не понятна сама логика перевода конвейера в разные состояния реализуемая из своего приложения после ухода в бесконечный цикл. Как послать команду из этой же программы (по передаваемому ей событию) ? Куда копать?

edu08
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.