internal static void RaiseFFmpegMessageLogged(object sender, MediaLogMessage e)
 {
     GuiContext.Current.EnqueueInvoke(() =>
     {
         FFmpegMessageLogged?.Invoke(sender, new MediaLogMessageEventArgs(e));
     });
 }
 internal void RaiseMessageLoggedEvent(MediaLogMessage e)
 {
     GuiContext.Current.EnqueueInvoke(() =>
     {
         MessageLogged?.Invoke(this, new MediaLogMessageEventArgs(e));
     });
 }
Exemple #3
0
 /// <summary>
 /// Initializes a new instance of the <see cref="MediaLogMessageEventArgs"/> class.
 /// </summary>
 /// <param name="message">The message.</param>
 public MediaLogMessageEventArgs(MediaLogMessage message)
 {
     TimestampUtc = message.TimestampUtc;
     MessageType  = message.MessageType;
     Message      = message.Message;
     AspectName   = message.AspectName;
 }
Exemple #4
0
 public void HandleFFmpegLogMessage(MediaLogMessage message)
 {
     if (message.MessageType == MediaLogMessageType.Trace)
     {
         return;
     }
     Debug.WriteLine($"{message.MessageType,10} - {message.Message}");
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="MediaLogMessageEventArgs"/> class.
 /// </summary>
 /// <param name="message">The message.</param>
 public MediaLogMessageEventArgs(MediaLogMessage message)
     : base()
 {
     Source       = message.Source;
     TimestampUtc = message.TimestampUtc;
     MessageType  = message.MessageType;
     Message      = message.Message;
 }
 public void OnMessageLogged(MediaEngine sender, MediaLogMessage e)
 {
     if (e.MessageType == MediaLogMessageType.Trace)
     {
         return;
     }
     Console.WriteLine($"{e.MessageType,10} - {e.Message}");
 }
Exemple #7
0
 internal void RaiseMessageLoggedEvent(MediaLogMessage e)
 {
     WindowsPlatform.Instance.Gui?.EnqueueInvoke(DispatcherPriority.Background,
                                                 new Action <MediaLogMessage>((eventArgs) =>
     {
         MessageLogged?.Invoke(this, new MediaLogMessageEventArgs(eventArgs));
     }),
                                                 e);
 }
Exemple #8
0
 internal static void RaiseFFmpegMessageLogged(object sender, MediaLogMessage e)
 {
     WindowsPlatform.Instance.Gui?.EnqueueInvoke(DispatcherPriority.Background,
                                                 new Action <MediaLogMessage>((eventArgs) =>
     {
         FFmpegMessageLogged?.Invoke(sender, new MediaLogMessageEventArgs(e));
     }),
                                                 e);
 }
Exemple #9
0
        /// <summary>
        /// Logs the specified message. This the genric logging mechanism available to all classes.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="messageType">Type of the message.</param>
        /// <param name="message">The message.</param>
        /// <exception cref="ArgumentNullException">sender</exception>
        /// <exception cref="ArgumentNullException">When sender is null</exception>
        public static void Log(MediaEngine sender, MediaLogMessageType messageType, string message)
        {
            if (sender == null)
            {
                throw new ArgumentNullException(nameof(sender));
            }
            var eventArgs = new MediaLogMessage(sender as MediaEngine, messageType, message);

            LogQueue.Enqueue(eventArgs);
        }
Exemple #10
0
        /// <summary>
        /// Logs the specified logging handler.
        /// </summary>
        /// <param name="loggingHandler">The logging handler.</param>
        /// <param name="messageType">Type of the message.</param>
        /// <param name="aspectName">Name of the code aspect where the message is coming from.</param>
        /// <param name="message">The message.</param>
        internal static void Log(ILoggingHandler loggingHandler, MediaLogMessageType messageType, string aspectName, string message)
        {
            // Prevent queueing messages without a handler
            if (loggingHandler == null || messageType == MediaLogMessageType.None)
            {
                return;
            }

            var messageItem = new MediaLogMessage(loggingHandler, messageType, message, aspectName);

            LogQueue.Enqueue(messageItem);
        }
 internal static void RaiseFFmpegMessageLogged(object sender, MediaLogMessage e)
 {
     FFmpegMessageLogged?.Invoke(sender, new MediaLogMessageEventArgs(e));
 }
Exemple #12
0
 internal void SendOnMessageLogged(MediaLogMessage message) =>
 Connector?.OnMessageLogged(this, message);
 /// <summary>
 /// Called when [message logged].
 /// </summary>
 /// <param name="sender">The sender.</param>
 /// <param name="e">The <see cref="T:Unosquare.FFME.Shared.MediaLogMessage" /> instance containing the event data.</param>
 public void OnMessageLogged(object sender, MediaLogMessage e)
 {
     Control?.RaiseMessageLoggedEvent(e);
 }
Exemple #14
0
 /// <summary>
 /// Called when [message logged].
 /// </summary>
 /// <param name="sender">The sender.</param>
 /// <param name="e">The <see cref="T:Unosquare.FFME.Shared.MediaLogMessage" /> instance containing the event data.</param>
 public void OnMessageLogged(MediaEngine sender, MediaLogMessage e)
 {
     Parent?.RaiseMessageLoggedEvent(e);
 }
Exemple #15
0
 /// <inheritdoc />
 void ILoggingHandler.HandleLogMessage(MediaLogMessage message) =>
 MediaEngine.Platform?.HandleFFmpegLogMessage(message);
Exemple #16
0
 /// <inheritdoc />
 void ILoggingHandler.HandleLogMessage(MediaLogMessage message) =>
 SendOnMessageLogged(message);
 internal void RaiseMessageLoggedEvent(MediaLogMessage e)
 {
     MessageLogged?.Invoke(this, new MediaLogMessageEventArgs(e));
 }
Exemple #18
0
 /// <summary>
 /// Handles global FFmpeg library messages
 /// </summary>
 /// <param name="message">The message.</param>
 public void HandleFFmpegLogMessage(MediaLogMessage message)
 {
     MediaElement.RaiseFFmpegMessageLogged(typeof(MediaElement), message);
 }
Exemple #19
0
        /// <summary>
        /// Logs the specified message. This the way ffmpeg messages are logged.
        /// </summary>
        /// <param name="messageType">Type of the message.</param>
        /// <param name="message">The message.</param>
        private static void LogGlobal(MediaLogMessageType messageType, string message)
        {
            var eventArgs = new MediaLogMessage(null, messageType, message);

            LogQueue.Enqueue(eventArgs);
        }
 /// <inheritdoc />
 public void HandleFFmpegLogMessage(MediaLogMessage message)
 {
 }