// --------------------------------------------------------------------------------------------------------------------
//
// This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License.
//
//
// The hb video encoder.
//
// --------------------------------------------------------------------------------------------------------------------
namespace HandBrake.Interop.Model.Encoding
{
using System.Collections.Generic;
using HandBrake.Interop.HbLib;
using HandBrake.Interop.Helpers;
///
/// The hb video encoder.
///
public class HBVideoEncoder
{
///
/// Gets or sets the compatible containers.
///
public int CompatibleContainers { get; set; }
///
/// Gets or sets the display name.
///
public string DisplayName { get; set; }
///
/// Gets or sets the id.
///
public int Id { get; set; }
///
/// Gets or sets the short name.
///
public string ShortName { get; set; }
///
/// Gets the list of presets this encoder supports. (null if the encoder doesn't support presets)
///
public List Presets
{
get
{
return InteropUtilities.ToStringListFromArrayPtr(HBFunctions.hb_video_encoder_get_presets(this.Id));
}
}
///
/// Gets the list of tunes this encoder supports. (null if the encoder doesn't support tunes)
///
public List Tunes
{
get
{
return InteropUtilities.ToStringListFromArrayPtr(HBFunctions.hb_video_encoder_get_tunes(this.Id));
}
}
///
/// Gets the list of profiles this encoder supports. (null if the encoder doesn't support profiles)
///
public List Profiles
{
get
{
return InteropUtilities.ToStringListFromArrayPtr(HBFunctions.hb_video_encoder_get_profiles(this.Id));
}
}
///
/// Gets the list of levels this encoder supports. (null if the encoder doesn't support levels)
///
public List Levels
{
get
{
return InteropUtilities.ToStringListFromArrayPtr(HBFunctions.hb_video_encoder_get_levels(this.Id));
}
}
}
}