Example #1
0
 public int CreatePlayerAndGetId(string fileName, uint options)
 {
     if (options == 1)
     {
         var timer = new Timer(10);
         timer.Elapsed += (sender, args) =>
         {
             _eventsProvider.Publish(new PlayerCompleted()
             {
                 Id = 0
             });
             timer.Dispose();
         };
         timer.Enabled = true;
     }
     return(0);
 }
        private void SchedulePlayerEof(string fileName, int id)
        {
            var pInfo = IntPtr.Zero;

            PJSUA_DLL.Media.pjsua_player_get_port(id, ref pInfo);
            var info = (pjmedia_port)Marshal.PtrToStructure(pInfo, typeof(pjmedia_port));
            var approxDurationSec = new FileInfo(Path.GetFullPath(fileName)).Length /
                                    (info.info.clock_rate * info.info.channel_count * (double)info.info.bits_per_sample / 8);
            var timer = new Timer(approxDurationSec * 1000);

            timer.Elapsed += (sender, args) =>
            {
                timer.Dispose();
                _eventsProvider.Publish(new PlayerCompleted {
                    Id = id
                });
            };
            timer.Enabled = true;
        }
Example #3
0
 private void OnLog(int level, string data, int len)
 {
     _eventAggregator.Publish(new LogRequested()
     {
         Message = data, Level = level
     });
 }