Skip to content

Commit

Permalink
Merge pull request #158 from martijn00/feature/SupportLibrariesUpdate
Browse files Browse the repository at this point in the history
Update Android support library and move folders to stay in path limit
  • Loading branch information
martijn00 authored Mar 17, 2017
2 parents dcad94a + 0015512 commit f4025fa
Show file tree
Hide file tree
Showing 169 changed files with 1,728 additions and 1,995 deletions.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,107 +1,107 @@
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Plugin.MediaManager.Abstractions.Enums;
using Plugin.MediaManager.Abstractions.EventArguments;

namespace Plugin.MediaManager.Abstractions
{
public delegate void MediaFileChangedEventHandler(object sender, MediaFileChangedEventArgs e);

public delegate void MediaFileFailedEventHandler(object sender, MediaFileFailedEventArgs e);

/// <summary>
/// The main purpose of this class is to be a controlling unit for all the single MediaItem implementations, who
/// in themselve can play their media, but need a central controling unit, surrounding them
/// </summary>
/// <seealso cref="Plugin.MediaManager.Abstractions.IPlaybackManager" />
public interface IMediaManager : IPlaybackManager
{
/// <summary>
/// Player responsible for audio playback
/// </summary>
IAudioPlayer AudioPlayer { get; set; }

/// <summary>
/// Player responsible for video playback
/// </summary>
IVideoPlayer VideoPlayer { get; set; }

/// <summary>
/// Queue to play media in sequences
/// </summary>
IMediaQueue MediaQueue { get; set; }

/// <summary>
/// Manages notifications to the native system
/// </summary>
IMediaNotificationManager MediaNotificationManager { get; set; }

/// <summary>
/// Extracts media information to put it into an IMediaFile
/// </summary>
IMediaExtractor MediaExtractor { get; set; }

/// <summary>
/// Used to manage the volume
/// </summary>
IVolumeManager VolumeManager { get; set; }

/// <summary>
/// Used in various views to control the playback
/// </summary>
IPlaybackController PlaybackController { get; set; }

/// <summary>
/// Raised when the media information of the track has changed.
/// </summary>
event MediaFileChangedEventHandler MediaFileChanged;

/// <summary>
/// Raised when mediadata of MediaFile failed to update
/// </summary>
event MediaFileFailedEventHandler MediaFileFailed;

/// <summary>
/// Creates new MediaFile object, adds it to the queue and starts playing
/// </summary>
Task Play(string url);

/// <summary>
/// Creates new MediaFile object, adds it to the queue and starts playing
/// </summary>
Task Play(string url, MediaFileType fileType);

/// <summary>
/// Creates new MediaFile object, adds it to the queue and starts playing
/// </summary>
Task Play(string url, MediaFileType fileType, ResourceAvailability availability);

/// <summary>
/// Adds all MediaFiles to the Queue and starts playing the first one
/// </summary>
Task Play(IEnumerable<IMediaFile> mediaFiles);

/// <summary>
/// Plays the next MediaFile in the Queue
/// </summary>
Task PlayNext();

/// <summary>
/// Plays the previous MediaFile in the Queue
/// </summary>
Task PlayPrevious();

/// <summary>
/// Plays a MediaFile by its position in the Queue
/// </summary>
Task PlayByPosition(int index);

/// <summary>
/// Sets a function which gets called before the MediaFile is played
/// </summary>
/// <param name="beforePlay">The before play.</param>
void SetOnBeforePlay(Func<IMediaFile, Task> beforePlay);

}
}
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Plugin.MediaManager.Abstractions.Enums;
using Plugin.MediaManager.Abstractions.EventArguments;

namespace Plugin.MediaManager.Abstractions
{
public delegate void MediaFileChangedEventHandler(object sender, MediaFileChangedEventArgs e);

public delegate void MediaFileFailedEventHandler(object sender, MediaFileFailedEventArgs e);

/// <summary>
/// The main purpose of this class is to be a controlling unit for all the single MediaItem implementations, who
/// in themselve can play their media, but need a central controling unit, surrounding them
/// </summary>
/// <seealso cref="Plugin.MediaManager.Abstractions.IPlaybackManager" />
public interface IMediaManager : IPlaybackManager
{
/// <summary>
/// Player responsible for audio playback
/// </summary>
IAudioPlayer AudioPlayer { get; set; }

/// <summary>
/// Player responsible for video playback
/// </summary>
IVideoPlayer VideoPlayer { get; set; }

/// <summary>
/// Queue to play media in sequences
/// </summary>
IMediaQueue MediaQueue { get; set; }

/// <summary>
/// Manages notifications to the native system
/// </summary>
IMediaNotificationManager MediaNotificationManager { get; set; }

/// <summary>
/// Extracts media information to put it into an IMediaFile
/// </summary>
IMediaExtractor MediaExtractor { get; set; }

/// <summary>
/// Used to manage the volume
/// </summary>
IVolumeManager VolumeManager { get; set; }

/// <summary>
/// Used in various views to control the playback
/// </summary>
IPlaybackController PlaybackController { get; set; }

/// <summary>
/// Raised when the media information of the track has changed.
/// </summary>
event MediaFileChangedEventHandler MediaFileChanged;

/// <summary>
/// Raised when mediadata of MediaFile failed to update
/// </summary>
event MediaFileFailedEventHandler MediaFileFailed;

/// <summary>
/// Creates new MediaFile object, adds it to the queue and starts playing
/// </summary>
Task Play(string url);

/// <summary>
/// Creates new MediaFile object, adds it to the queue and starts playing
/// </summary>
Task Play(string url, MediaFileType fileType);

/// <summary>
/// Creates new MediaFile object, adds it to the queue and starts playing
/// </summary>
Task Play(string url, MediaFileType fileType, ResourceAvailability availability);

/// <summary>
/// Adds all MediaFiles to the Queue and starts playing the first one
/// </summary>
Task Play(IEnumerable<IMediaFile> mediaFiles);

/// <summary>
/// Plays the next MediaFile in the Queue
/// </summary>
Task PlayNext();

/// <summary>
/// Plays the previous MediaFile in the Queue
/// </summary>
Task PlayPrevious();

/// <summary>
/// Plays a MediaFile by its position in the Queue
/// </summary>
Task PlayByPosition(int index);

/// <summary>
/// Sets a function which gets called before the MediaFile is played
/// </summary>
/// <param name="beforePlay">The before play.</param>
void SetOnBeforePlay(Func<IMediaFile, Task> beforePlay);

}
}
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,87 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<MinimumVisualStudioVersion>10.0</MinimumVisualStudioVersion>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{6EDB0588-FFC5-4EF5-8A99-9E241D0F878D}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Plugin.MediaManager.Abstractions</RootNamespace>
<AssemblyName>Plugin.MediaManager.Abstractions</AssemblyName>
<DefaultLanguage>en-US</DefaultLanguage>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<TargetFrameworkProfile>Profile7</TargetFrameworkProfile>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoWarn>1591</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<DocumentationFile>bin\Release\Plugin.MediaManager.Abstractions.XML</DocumentationFile>
<NoWarn>1591</NoWarn>
</PropertyGroup>
<ItemGroup>
<Compile Include="IMediaFileMetadata.cs" />
<Compile Include="IMediaManager.cs" />
<Compile Include="Implementations\MediaFileMetadata.cs" />
<Compile Include="IPlaybackManager.cs" />
<Compile Include="IVideoSurface.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="IMediaQueue.cs" />
<Compile Include="IMediaFile.cs" />
<Compile Include="EventArguments\BufferingChangedEventArgs.cs" />
<Compile Include="EventArguments\PlayingChangedEventArgs.cs" />
<Compile Include="EventArguments\StatusChangedEventArgs.cs" />
<Compile Include="Implementations\MediaQueue.cs" />
<Compile Include="Implementations\Helpers.cs" />
<Compile Include="IAudioPlayer.cs" />
<Compile Include="IVideoPlayer.cs" />
<Compile Include="IMediaNotificationManager.cs" />
<Compile Include="IMediaExtractor.cs" />
<Compile Include="EventArguments\MediaFinishedEventArgs.cs" />
<Compile Include="EventArguments\MediaFailedEventArgs.cs" />
<Compile Include="EventArguments\QueueMediaChangedEventArgs.cs" />
<Compile Include="EventArguments\QueueEndedEventArgs.cs" />
<Compile Include="Implementations\MediaManagerBase.cs" />
<Compile Include="EventArguments\MediaFileChangedEventArgs.cs" />
<Compile Include="EventArguments\MediaFileFailedEventArgs.cs" />
<Compile Include="Implementations\MediaFile.cs" />
<Compile Include="EventArguments\MetadataChangedEventArgs.cs" />
<Compile Include="IVolumeManager.cs" />
<Compile Include="EventArguments\VolumeChangedEventArgs.cs" />
<Compile Include="Enums\MediaFileType.cs" />
<Compile Include="Enums\RepeatType.cs" />
<Compile Include="Enums\VideoAspectMode.cs" />
<Compile Include="Enums\MediaPlayerStatus.cs" />
<Compile Include="IPlaybackController.cs" />
<Compile Include="Implementations\PlaybackController.cs" />
<Compile Include="Enums\ResourceAvailability.cs" />
</ItemGroup>
<ItemGroup>
<Folder Include="Enums\" />
</ItemGroup>
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<MinimumVisualStudioVersion>10.0</MinimumVisualStudioVersion>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{6EDB0588-FFC5-4EF5-8A99-9E241D0F878D}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Plugin.MediaManager.Abstractions</RootNamespace>
<AssemblyName>Plugin.MediaManager.Abstractions</AssemblyName>
<DefaultLanguage>en-US</DefaultLanguage>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<TargetFrameworkProfile>Profile7</TargetFrameworkProfile>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<NoWarn>1591</NoWarn>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<DocumentationFile>bin\Release\Plugin.MediaManager.Abstractions.XML</DocumentationFile>
<NoWarn>1591</NoWarn>
</PropertyGroup>
<ItemGroup>
<Compile Include="IMediaFileMetadata.cs" />
<Compile Include="IMediaManager.cs" />
<Compile Include="Implementations\MediaFileMetadata.cs" />
<Compile Include="IPlaybackManager.cs" />
<Compile Include="IVideoSurface.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="IMediaQueue.cs" />
<Compile Include="IMediaFile.cs" />
<Compile Include="EventArguments\BufferingChangedEventArgs.cs" />
<Compile Include="EventArguments\PlayingChangedEventArgs.cs" />
<Compile Include="EventArguments\StatusChangedEventArgs.cs" />
<Compile Include="Implementations\MediaQueue.cs" />
<Compile Include="Implementations\Helpers.cs" />
<Compile Include="IAudioPlayer.cs" />
<Compile Include="IVideoPlayer.cs" />
<Compile Include="IMediaNotificationManager.cs" />
<Compile Include="IMediaExtractor.cs" />
<Compile Include="EventArguments\MediaFinishedEventArgs.cs" />
<Compile Include="EventArguments\MediaFailedEventArgs.cs" />
<Compile Include="EventArguments\QueueMediaChangedEventArgs.cs" />
<Compile Include="EventArguments\QueueEndedEventArgs.cs" />
<Compile Include="Implementations\MediaManagerBase.cs" />
<Compile Include="EventArguments\MediaFileChangedEventArgs.cs" />
<Compile Include="EventArguments\MediaFileFailedEventArgs.cs" />
<Compile Include="Implementations\MediaFile.cs" />
<Compile Include="EventArguments\MetadataChangedEventArgs.cs" />
<Compile Include="IVolumeManager.cs" />
<Compile Include="EventArguments\VolumeChangedEventArgs.cs" />
<Compile Include="Enums\MediaFileType.cs" />
<Compile Include="Enums\RepeatType.cs" />
<Compile Include="Enums\VideoAspectMode.cs" />
<Compile Include="Enums\MediaPlayerStatus.cs" />
<Compile Include="IPlaybackController.cs" />
<Compile Include="Implementations\PlaybackController.cs" />
<Compile Include="Enums\ResourceAvailability.cs" />
</ItemGroup>
<ItemGroup>
<Folder Include="Enums\" />
</ItemGroup>
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
Loading

0 comments on commit f4025fa

Please sign in to comment.