/* rygel-renderer-2.0.vapi generated by valac 0.18.0.2-2c22, do not modify. */

namespace Rygel {
	[CCode (cheader_filename = "rygel-renderer.h")]
	public class MediaRenderer : Rygel.MediaDevice {
		public MediaRenderer (string title, Rygel.MediaPlayer player, Rygel.PluginCapabilities capabilities = PluginCapabilities.NONE);
	}
	[CCode (cheader_filename = "rygel-renderer.h")]
	public class MediaRendererPlugin : Rygel.Plugin {
		public MediaRendererPlugin (string name, string? title, string? description = null, Rygel.PluginCapabilities capabilities = PluginCapabilities.NONE);
		public virtual Rygel.MediaPlayer? get_player ();
	}
	[CCode (cheader_filename = "rygel-renderer.h")]
	public interface MediaPlayer : GLib.Object {
		public abstract string[] get_mime_types ();
		public abstract string[] get_protocols ();
		public abstract bool seek (int64 time);
		public abstract string? content_features { owned get; set; }
		public abstract int64 duration { get; }
		public string duration_as_str { owned get; }
		public abstract string? metadata { owned get; set; }
		public abstract string? mime_type { owned get; set; }
		public abstract string playback_state { owned get; set; }
		public abstract int64 position { get; }
		public string position_as_str { owned get; }
		public abstract string? uri { owned get; set; }
		public abstract double volume { get; set; }
	}
}
