Форум сайта python.su
здравствуйте.
есть код:
import appswitch,e32,audioскрипт запускается и переходит в фон. через 10 сек начинает играть мелодия.
appswitch.switch_to_bg(u'pot')#свернуть прогу
e=audio.Sound.open(u'c:\\1.mp3')
e32.ao_sleep(10)
e.play()
e32.ao_sleep(4)
e.stop()
e.close()
Офлайн
Так уж ведет себя симбиан при поступлении звонка :)
Что делать, зависит от цели. Попробуй начать продолжить проигрывание после снятия трубки.
Если расскажешь, что хочешь реализовать, возможно дам совет, а то и код набросаю
Офлайн
igor.kaist
спасибо за помощь.
а реализовать пытаюсь вот что: поминутный сигнал при разговоре.
Офлайн
Вообщем то, попробуй проигрывать уже во время звонка. После того, как звонок начался. Отслеживай, с помощью модуля CallStatus (точное название не помню, но в аpi это есть), и при поднятии трубки, включай.
Если не получится, глянь в сторону сторонних модулей zplayer например. У тебя какой симбиан кстати?
Офлайн
igor.kaistтакого модуля я не нашел. есть модуль telephone, через него я могу узнать об ответе на звонок. я так и пробовал при ответе чтоб играла музыка, но не играла.
После того, как звонок начался. Отслеживай, с помощью модуля CallStatus (точное название не помню, но в аpi это есть), и при поднятии трубки, включай.
igor.kaistнашел только вот это. но не устанавливается у меня.
Если не получится, глянь в сторону сторонних модулей zplayer например.
igor.kaist9.2, смарт нокия н82.
У тебя какой симбиан кстати?
Офлайн
А ну да, он сделан для осей ниже 9. Ограничения симбиан, думаю сделать ничего нельзя.
Как вариант, использовать готовый программы, предназначенные для этого.
Или взяться за c++, порыться в symbian stdk и написать библиотеку для питона самому
Офлайн
igor.kaistсколько исчу. не могу найти прогу только для этой цели.
Как вариант, использовать готовый программы, предназначенные для этого.
igor.kaistс с++ знаком для компа. пробовал карьид. но там не разобрался. что как и куда. а библиотеку я не знаю как написать.
Или взяться за c++, порыться в symbian stdk и написать библиотеку для питона самому
Офлайн
Боюсь у меня не получится, так как с си++ не работал. В апи есть пример кстати библиотеки на си. Думаю все это дело всего одной функции из стдк.
Хотя если не получается напрямую, можно поступить и через …. :) Слушай, когда идет запись звука, то раз в 5 секунд раздается бип. Что если начать запись, подождать 5 секунд, остановить, подождать 55 секунд, опять начать запись, удалить после этого файл :) вот такое простое решение через …. :)
Офлайн
igor.kaist
спасибо. попробую так
Офлайн
igor.kaist
вот такой скрипт имею:
import appuifw,os,appswitch,e32,telephone,audio,key_codesона работает как: поступает звонок. я на на него отвечаю. через 5 сек после ответа слыши пик в ухе (это началось запись), потом через 10 сек опять пик. но вот 3 раза его нету. хотя должно же быть
def nachalo():
appswitch.switch_to_bg(u'pot')#свернуть прогу
telephone.call_state(callback) # проверяем линию на наличие звонков
def callback(state):
if state == telephone.EStatusConnected:
sound() #
if state == telephone.EStatusAnswering:
sound()
def sound():
e1=audio.Sound.open(u'c:\\2.wav')
e32.ao_sleep(5)
e1.record()
e32.ao_sleep(5)
e1.stop()
e1.close()
telephone.call_state(callback)
nachalo()
Отредактировано (Янв. 8, 2009 13:55:19)
Офлайн