Gets or sets a value that indicates whether all the titles in the menu-less image will be concatenated for playback.
[DispIdAttribute(13)]
bool MenulessTitlePlay {get; set;}
<DispIdAttribute(13)>
Property MenulessTitlePlay As Boolean
True if all the titles will be concatenated for playback. The user will not need to play the next title when the currently playing title is finished.
False if the playback will stop after the first (or current) title is finished. The next title does not play automatically. This is the default value.
Gets or sets a value that indicates whether all the titles in the menu-less image will be concatenated for playback. The default value is false. This property affects only images that do not have a menu.
using Leadtools;
using Leadtools.Multimedia;
using LeadtoolsMultimediaExamples.Fixtures;
public bool _result = false;
public ConvertCtrlForm _form = new ConvertCtrlForm();
private ConvertCtrl _convertCtrl = null;
private LTDvdWriter _dvdWriter = null;
public void DvdWriterExample()
{
// reference the convert control
_convertCtrl = _form.ConvertCtrl;
// source files for DVD content
string inFile1 = Path.Combine(LEAD_VARS.MediaDir, "DVDWriter_Source1.avi");
string inFile2 = Path.Combine(LEAD_VARS.MediaDir, "DVDWriter_Source2.avi");
string inFile3 = Path.Combine(LEAD_VARS.MediaDir, "DVDWriter_Source3.avi");
string inFile4 = Path.Combine(LEAD_VARS.MediaDir, "DVDWriter_Source4.avi");
string backgroundImageFile = Path.Combine(LEAD_VARS.MediaDir, "DVDWriter_Background.jpg");
string outFile = Path.Combine(LEAD_VARS.MediaDir, "ConvertCtrl_DvdWriterExample_DVD");
try
{
_dvdWriter = null;
_convertCtrl.Preview = true;
_convertCtrl.PreviewVisible = true;
// setup the converter
_convertCtrl.TargetFormat = TargetFormatType.DVD;
_convertCtrl.VideoCompressors.Mpeg2.Selected = true;
_convertCtrl.AudioCompressors.MpegAudio.Selected = true;
// Create a DVD image with 2 titles, each contains 2 chapters:
// Source video
_convertCtrl.SourceFile = inFile1;
// Destination image folder
_convertCtrl.TargetFile = outFile;
// Retrieve the DVD Writer interface
_dvdWriter = _convertCtrl.GetSubObject(ConvertObject.Sink) as LTDvdWriter;
_dvdWriter.RemoveAllMenuTitles();
_dvdWriter.MenulessTitlePlay = false;
// Set the TitleBreak property to false.
// This will prevent the title from being written immediately after the conversion
_dvdWriter.TitleBreak = false;
_dvdWriter.AddMenuTitle("Title 1", -1);
// Write the first chapter in the first title
_convertCtrl.StartConvert();
while (_convertCtrl.State != ConvertState.Stopped)
Application.DoEvents();
_convertCtrl.ResetSource();
int highPart = 0;
int lowPart = _dvdWriter.GetBytesWritten(out highPart);
Int64 written = highPart << 32 | lowPart;
_convertCtrl.SourceFile = inFile2;
_convertCtrl.StartConvert();
while (_convertCtrl.State != ConvertState.Stopped)
Application.DoEvents();
_convertCtrl.ResetSource();
// Prepare for the second title
// Set the TitleBreak property to TRUE, so the current title can be flushed
_dvdWriter.TitleBreak = true;
// Disable Overwrite so the title will be appended to an existing dvd image
_dvdWriter.Overwrite = false;
_dvdWriter.MenulessTitlePlay = false;
// Set the TitleBreak property to FALSE.
// This will prevent the title from being written immediately after the conversion
_dvdWriter.TitleBreak = false;
_dvdWriter.AddMenuTitle("Title 2", -1);
// Write the first chapter in the second title
_convertCtrl.SourceFile = inFile3;
_convertCtrl.StartConvert();
while (_convertCtrl.State != ConvertState.Stopped)
Application.DoEvents();
_convertCtrl.ResetSource();
// Write the second chapter in the second title
_convertCtrl.SourceFile = inFile4;
_convertCtrl.StartConvert();
while (_convertCtrl.State != ConvertState.Stopped)
Application.DoEvents();
_convertCtrl.ResetSource();
// Close the second title
_dvdWriter.TitleBreak = true;
_dvdWriter.TitleMenu = true;
_dvdWriter.MenuLoop = true;
_dvdWriter.MenulessTitlePlay = false;
// Write the second chapter in the second title
_convertCtrl.SourceFile = backgroundImageFile;
ChangeStillImageDuration(1.0);
_convertCtrl.StartConvert();
while (_convertCtrl.State != ConvertState.Stopped)
Application.DoEvents();
_convertCtrl.ResetSource();
_dvdWriter.TitleMenu = false;
_dvdWriter.Overwrite = false;
_convertCtrl.ResetTarget();
_convertCtrl.ResetSource();
// done, free COM object
Marshal.ReleaseComObject(_dvdWriter);
_dvdWriter = null;
// set the result
_result = true;
}
catch (Exception ex)
{
_result = false;
}
}
private void ChangeStillImageDuration(double duration)
{
ILTStlImgRd pStlImgRd;
try
{
pStlImgRd = _convertCtrl.GetSubObject(ConvertObject.SourceFilter) as ILTStlImgRd;
if (pStlImgRd != null)
{
// get the current menu duration
double currentDuration;
currentDuration = _convertCtrl.Duration;
if (currentDuration * 2 <= duration)
pStlImgRd.Loop = (int)(duration / currentDuration + 0.5);
}
}
catch
{
}
}
static class LEAD_VARS
{
public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 20\Media";
}
Imports Leadtools
Imports Leadtools.Multimedia
Imports LeadtoolsMultimediaExamples.Fixtures
Public _result As Boolean = False
Public _form As ConvertCtrlForm = New ConvertCtrlForm()
Private _convertCtrl As ConvertCtrl = Nothing
Private _dvdWriter As LTDvdWriter = Nothing
Public Sub DvdWriterExample()
' reference the convert control
_convertCtrl = _form.ConvertCtrl
' source files for DVD content
Dim inFile1 As String = "mediafiles\input\DVDWriter_Source1.avi"
Dim inFile2 As String = "mediafiles\input\DVDWriter_Source2.avi"
Dim inFile3 As String = "mediafiles\input\DVDWriter_Source3.avi"
Dim inFile4 As String = "mediafiles\input\DVDWriter_Source4.avi"
Dim backgroundImageFile As String = "mediafiles\input\DVDWriter_Background.jpg"
Dim outFile As String = "mediafiles\output\ConvertCtrl_DvdWriterExample_DVD"
Try
_dvdWriter = Nothing
_convertCtrl.Preview = True
_convertCtrl.PreviewVisible = True
' setup the converter
_convertCtrl.TargetFormat = TargetFormatType.DVD
_convertCtrl.VideoCompressors.Mpeg2.Selected = True
_convertCtrl.AudioCompressors.MpegAudio.Selected = True
' Create a DVD image with 2 titles, each contains 2 chapters:
' Source video
_convertCtrl.SourceFile = inFile1
' Destination image folder
_convertCtrl.TargetFile = outFile
' Retrieve the DVD Writer interface
_dvdWriter = TryCast(_convertCtrl.GetSubObject(ConvertObject.Sink), LTDvdWriter)
_dvdWriter.RemoveAllMenuTitles()
_dvdWriter.MenulessTitlePlay = False
' Set the TitleBreak property to false.
' This will prevent the title from being written immediately after the conversion
_dvdWriter.TitleBreak = False
_dvdWriter.AddMenuTitle("Title 1", -1)
' Write the first chapter in the first title
_convertCtrl.StartConvert()
Do While _convertCtrl.State <> ConvertState.Stopped
Application.DoEvents()
Loop
_convertCtrl.ResetSource()
Dim highPart As Integer = 0
Dim lowPart As Integer = _dvdWriter.GetBytesWritten(highPart)
Dim written As Int64 = highPart << 32 Or lowPart
_convertCtrl.SourceFile = inFile2
_convertCtrl.StartConvert()
Do While _convertCtrl.State <> ConvertState.Stopped
Application.DoEvents()
Loop
_convertCtrl.ResetSource()
' Prepare for the second title
' Set the TitleBreak property to TRUE, so the current title can be flushed
_dvdWriter.TitleBreak = True
' Disable Overwrite so the title will be appended to an existing dvd image
_dvdWriter.Overwrite = False
_dvdWriter.MenulessTitlePlay = False
' Set the TitleBreak property to FALSE.
' This will prevent the title from being written immediately after the conversion
_dvdWriter.TitleBreak = False
_dvdWriter.AddMenuTitle("Title 2", -1)
' Write the first chapter in the second title
_convertCtrl.SourceFile = inFile3
_convertCtrl.StartConvert()
Do While _convertCtrl.State <> ConvertState.Stopped
Application.DoEvents()
Loop
_convertCtrl.ResetSource()
' Write the second chapter in the second title
_convertCtrl.SourceFile = inFile4
_convertCtrl.StartConvert()
Do While _convertCtrl.State <> ConvertState.Stopped
Application.DoEvents()
Loop
_convertCtrl.ResetSource()
' Close the second title
_dvdWriter.TitleBreak = True
_dvdWriter.TitleMenu = True
_dvdWriter.MenuLoop = True
_dvdWriter.MenulessTitlePlay = False
' Write the second chapter in the second title
_convertCtrl.SourceFile = backgroundImageFile
ChangeStillImageDuration(1.0)
_convertCtrl.StartConvert()
Do While _convertCtrl.State <> ConvertState.Stopped
Application.DoEvents()
Loop
_convertCtrl.ResetSource()
_dvdWriter.TitleMenu = False
_dvdWriter.Overwrite = False
_convertCtrl.ResetTarget()
_convertCtrl.ResetSource()
' done, free COM object
Marshal.ReleaseComObject(_dvdWriter)
_dvdWriter = Nothing
' set the result
_result = True
Catch ex As Exception
_result = False
End Try
End Sub
Private Sub ChangeStillImageDuration(ByVal duration As Double)
Dim pStlImgRd As ILTStlImgRd
Try
pStlImgRd = TryCast(_convertCtrl.GetSubObject(ConvertObject.SourceFilter), ILTStlImgRd)
If Not pStlImgRd Is Nothing Then
' get the current menu duration
Dim currentDuration As Double
currentDuration = _convertCtrl.Duration
If currentDuration * 2 <= duration Then
pStlImgRd.Loop = CInt(duration / currentDuration + 0.5)
End If
End If
Catch
End Try
End Sub
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document