diff --git a/src/AudioBand.AudioSource/IAudioSource.cs b/src/AudioBand.AudioSource/IAudioSource.cs
index 09bb8c58..94165d74 100644
--- a/src/AudioBand.AudioSource/IAudioSource.cs
+++ b/src/AudioBand.AudioSource/IAudioSource.cs
@@ -6,19 +6,21 @@
namespace AudioBand.AudioSource
{
///
- /// Provides information from an audio source and exposes controls
+ /// Provides information and notifies changes from an audio source and exposes playback controls.
///
[InheritedExport(typeof(IAudioSource))]
public interface IAudioSource
{
///
- /// Name of the audio source which is displayed
+ /// Gets the name of the audio source.
///
+ /// The name of the audio source.
string Name { get; }
///
- /// Audio source logger that will be injected
+ /// Gets or sets the used for logging.
///
+ /// Audio source logger that will be injected.
IAudioSourceLogger Logger { get; set; }
///
@@ -27,52 +29,52 @@ public interface IAudioSource
event EventHandler SettingChanged;
///
- /// Track information has changed
+ /// Occurs when track information has changed.
///
event EventHandler TrackInfoChanged;
///
- /// Track is now playing
+ /// Occurs when the playback state has changed to playing.
///
event EventHandler TrackPlaying;
///
- /// Track is paused
+ /// Occurs when the playback state has changed to paused.
///
event EventHandler TrackPaused;
///
- /// Track progress has changed to the current song duration
+ /// Occurs when the current track progress has changed.
///
event EventHandler TrackProgressChanged;
///
- /// This audio source has been selected
+ /// Called when the audio source is active.
///
Task ActivateAsync(CancellationToken cancellationToken = default(CancellationToken));
///
- /// The audio source is no longer active
+ /// Called when the audio source is no longer active.
///
Task DeactivateAsync(CancellationToken cancellationToken = default(CancellationToken));
///
- /// User requested to play the track. This should trigger if successful
+ /// Called when there is a request to start playback.
///
Task PlayTrackAsync(CancellationToken cancellationToken = default(CancellationToken));
///
- /// User requested to pause the track. This should trigger if successful
+ /// Called when there is a request to stop playback.
///
Task PauseTrackAsync(CancellationToken cancellationToken = default(CancellationToken));
///
- /// User requested the previous track
+ /// Called when there is a request to skip to the previous track.
///
Task PreviousTrackAsync(CancellationToken cancellationToken = default(CancellationToken));
///
- /// User requested the next track
+ /// Called when there is a request to skip to the next track.
///
Task NextTrackAsync(CancellationToken cancellationToken = default(CancellationToken));
}