         @emitter.on 'stream.display', (event, video) =>
             uid = ($ video).attr 'rel'
             @users[uid].video = video
+            video.volume = @users[uid]['volume']
             ($ "li#video_#{uid}").append video
 
     # Fill the user list with new users.
     fill            : (event, data) =>
         for user in data.peers
-            @users[user.id] = { name : user.name , uid : user.id, 'isLocal' : off }
+            @users[user.id] = { name : user.name , uid : user.id, 'isLocal' : off, volume : on}
         do @display
 
     # Update the user list by creating or removing a user from the list.
     update          : (event, user) =>
         switch event
-            when 'create' then @users[user.id] = { name : user.name , uid : user.id, 'isLocal' : off }
+            when 'create' then @users[user.id] = { name : user.name , uid : user.id, isLocal : off, volume : on }
             when 'remove' then delete @users[user.id]
         do @display
 

        video = ((button.parents 'li.thumbnail-wrapper').find 'video')[0] # get the video tag for the li.
        classI = if (do button.text) is 'mute' then 'icon-microphone' else 'icon-microphone-off'
        text = if (do button.text) is 'mute' then 'unmute' else 'mute'
        video.volume = !video.volume
        do button.empty
        button.append "<i class='#{classI}'></i>#{text}"


        @users       = { }
        @users[window.Voicious.currentUser.uid] = window.Voicious.currentUser
        @users[window.Voicious.currentUser.uid]['isLocal'] = on
        @users[window.Voicious.currentUser.uid]['volume'] = on
        do @configureEvents
        do @display
        ($ window).on 'resize', () =>
