websiteWebsite
kinovea Kinovea
Analyse vidéo et décomposition de mouvement.

 

Browse the code

Revision log Information on the revision
Revision: 574 (differences)
Author: joan
Log message: [FileTypes] Fix bug 258 - Crash during explorer browse.
RCA: In the context of Mac OS Parallels, the GetFiles() method on Directory can yield entries with invalid path.
Fix: catch errors and move on.
Change revision:
#region License
/*
Copyright © Joan Charmant 2011.
joan.charmant@gmail.com 
 
This file is part of Kinovea.
 
Kinovea is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License version 2 
as published by the Free Software Foundation.
 
Kinovea is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
 
You should have received a copy of the GNU General Public License
along with Kinovea. If not, see http://www.gnu.org/licenses/.
*/
#endregion
using System;
 
namespace Kinovea.Video
{
    /// <summary>
    /// Flags indicating the capabilities of the specific file loaded by the reader.
    /// </summary>
    [Flags]
    public enum VideoCapabilities : int
        {
                None = 0,
                CanDecodeOnDemand = 1,
                CanPreBuffer = 2,
                CanCache = 4,
                CanChangeWorkingZone = 8,
                CanChangeAspectRatio = 16,
                CanChangeDeinterlacing = 32,
                CanChangeVideoDuration = 64,
                CanChangeFrameRate = 128,
                CanChangeOriginalSize = 256
        }
    
    /// <summary>
    /// The current decoding mode the video reader is in.
    /// </summary>
    public enum VideoDecodingMode
    {
        NotInitialized, // The video is just opening or has closed and the reader is not fully initialized.
        OnDemand,       // each frame is decoded on the fly when the player needs it.
        PreBuffering,   // frames are decoded in a separate thread and pushed to a small buffer.
        Caching         // All the frames of the working zone have been loaded to a large buffer.
    }
    
    public enum ImageAspectRatio
    {
        Auto,
        Force43,
        Force169,
        ForcedSquarePixels
    }
    
    public enum OpenVideoResult
    {
        Success,
        UnknownError,
        NotSupported,
        FileNotOpenned,
                StreamInfoNotFound,
                VideoStreamNotFound,
                CodecNotFound,
                CodecNotOpened,
                CodecNotSupported,
                Cancelled
    }
    
    public enum SaveResult
        {
                Success,
                MuxerNotFound,
                MuxerParametersNotAllocated,
                MuxerParametersNotSet,
                VideoStreamNotCreated,
                EncoderNotFound,
                EncoderParametersNotAllocated,
                EncoderParametersNotSet,
                EncoderNotOpened,
                FileNotOpened,
                FileHeaderNotWritten,
                InputFrameNotAllocated,
                MetadataStreamNotCreated,
                MetadataNotWritten,
                ReadingError,
                UnknownError,
                MovieNotLoaded,
                TranscodeNotFinished,
                Cancelled
        }
}