Kodi Docs 20.0
Kodi is an open source media player and entertainment hub.
CEdl Class Reference

#include <Edl.h>

Public Member Functions

 CEdl ()
 
bool ReadEditDecisionLists (const CFileItem &fileItem, const float fFramesPerSecond)
 
void Clear ()
 
bool HasEdits () const
 Check if there are any parsed edits in EDL for the current item. More...
 
bool HasSceneMarker () const
 
int GetTotalCutTime () const
 
int RemoveCutTime (int iSeek) const
 
double RestoreCutTime (double dClock) const
 
const std::vector< EDL::Edit > & GetEditList () const
 Get the EDL edit list. More...
 
bool InEdit (int iSeek, EDL::Edit *pEdit=nullptr)
 Check if for the provided seek time is contained within an EDL edit and fill pEdit with the respective edit struct. More...
 
int GetLastEditTime () const
 Get the last processed edit time (set during playback when a given edit is surpassed) More...
 
void SetLastEditTime (int editTime)
 Set the last processed edit time (set during playback when a given edit is surpassed) More...
 
bool GetNextSceneMarker (bool bPlus, const int iClock, int *iSceneMarker)
 

Static Public Member Functions

static std::string MillisecondsToTimeString (const int iMilliseconds)
 

Constructor & Destructor Documentation

◆ CEdl()

CEdl::CEdl ( )

Member Function Documentation

◆ Clear()

void CEdl::Clear ( )

◆ GetEditList()

const std::vector< EDL::Edit > & CEdl::GetEditList ( ) const
inline

Get the EDL edit list.

Returns
The EDL edits or an empty vector if no edits exist.

◆ GetLastEditTime()

int CEdl::GetLastEditTime ( ) const

Get the last processed edit time (set during playback when a given edit is surpassed)

Returns
The last processed edit time (ms) or -1 if not any

◆ GetNextSceneMarker()

bool CEdl::GetNextSceneMarker ( bool  bPlus,
const int  iClock,
int iSceneMarker 
)

◆ GetTotalCutTime()

int CEdl::GetTotalCutTime ( ) const

◆ HasEdits()

bool CEdl::HasEdits ( ) const

Check if there are any parsed edits in EDL for the current item.

Returns
true if EDL has edits, false otherwise

◆ HasSceneMarker()

bool CEdl::HasSceneMarker ( ) const

◆ InEdit()

bool CEdl::InEdit ( int  iSeek,
EDL::Edit pEdit = nullptr 
)

Check if for the provided seek time is contained within an EDL edit and fill pEdit with the respective edit struct.

Note
seek time refers to the time in the original file timeline (i.e. without considering cut blocks)
Parameters
iSeekThe seek time (on the original timeline)
[in,out]pEditThe edit pointer (or nullptr if iSeek not within an edit)
Returns
true if iSeek is within an edit, false otherwise

◆ MillisecondsToTimeString()

std::string CEdl::MillisecondsToTimeString ( const int  iMilliseconds)
static

◆ ReadEditDecisionLists()

bool CEdl::ReadEditDecisionLists ( const CFileItem fileItem,
const float  fFramesPerSecond 
)

◆ RemoveCutTime()

int CEdl::RemoveCutTime ( int  iSeek) const
Todo:
Consider an optimization of using the (now unused) total cut time if the seek time requested is later than the end of the last recorded cut. For example, when calculating the total duration for display.

◆ RestoreCutTime()

double CEdl::RestoreCutTime ( double  dClock) const

◆ SetLastEditTime()

void CEdl::SetLastEditTime ( int  editTime)

Set the last processed edit time (set during playback when a given edit is surpassed)

Parameters
editTimeThe last processed EDL edit time (ms)

The documentation for this class was generated from the following files: