Exemple #1
0
 def _NH_MediaStreamDidNotInitialize(self, notification):
     if notification.sender is self._stream_ref():
         notification.center.remove_observer(
             ObserverWeakrefProxy(self), name='MediaStreamDidInitialize')
         notification.center.remove_observer(
             ObserverWeakrefProxy(self), name='MediaStreamDidNotInitialize')
         self._stream_ref = None
         self._stream = None
Exemple #2
0
    def __init__(self, stream):
        self._stream_ref = weakref.ref(
            stream
        )  # Keep a weak reference before the stream is initialized to avoid a memory cycle that would delay releasing audio resources
        self._stream = None  # We will store the actual reference once it's initialized and we're guaranteed to get MediaStreamDidEnd and do the cleanup
        self._rtp_transport = None

        self.__dict__['type'] = None
        self.__dict__['zrtp'] = None

        notification_center = NotificationCenter()
        notification_center.add_observer(ObserverWeakrefProxy(self),
                                         name='MediaStreamDidInitialize')
        notification_center.add_observer(ObserverWeakrefProxy(self),
                                         name='MediaStreamDidNotInitialize')
Exemple #3
0
 def __init__(self, mixer):
     self.mixer = mixer
     self.ports = set()
     self._lock = RLock()
     notification_center = NotificationCenter()
     notification_center.add_observer(ObserverWeakrefProxy(self),
                                      name='AudioPortDidChangeSlots')
Exemple #4
0
 def _NH_MediaStreamDidInitialize(self, notification):
     stream = notification.sender
     if stream is self._stream_ref():
         self._stream = stream
         self._rtp_transport = stream._rtp_transport
         notification.center.remove_observer(
             ObserverWeakrefProxy(self), name='MediaStreamDidInitialize')
         notification.center.remove_observer(
             ObserverWeakrefProxy(self), name='MediaStreamDidNotInitialize')
         notification.center.add_observer(self, sender=self._stream)
         notification.center.add_observer(self, sender=self._rtp_transport)
         encryption = stream._srtp_encryption or ''
         if encryption.startswith('sdes'):
             self.__dict__['type'] = 'SRTP/SDES'
         elif encryption == 'zrtp':
             self.__dict__['type'] = 'ZRTP'
             self.__dict__['zrtp'] = ZRTPStreamOptions(stream)
Exemple #5
0
 def __init__(self):
     self.notifications = deque()
     NotificationCenter().add_observer(ObserverWeakrefProxy(self))
Exemple #6
0
 def __init__(self):
     print "Registering VolatileAllObserver to receive all notifications"
     NotificationCenter().add_observer(ObserverWeakrefProxy(self))