Esempio n. 1
0
        private IMetaValue GetRotation()
        {
            var orientation = FFmpeg.ParseOrientation(FfmpegOutput);

            if (MetadataEnumHelper.IsValidOrientation(orientation) && (orientation != Orientation.None))
            {
                return(new MetaValue(orientation.GetDescription(), ((ushort)orientation).ToString(CultureInfo.InvariantCulture)));
            }
            return(null);
        }
Esempio n. 2
0
        private IGalleryObjectMetadataItem GetExposureProgramMetadataItem()
        {
            IGalleryObjectMetadataItem mdi = null;
            MetadataItem rawMdi            = null;

            if (RawMetadata.TryGetValue(RawMetadataItemName.ExifExposureProg, out rawMdi))
            {
                if (rawMdi.ExtractedValueType == ExtractedValueType.Int64)
                {
                    ExposureProgram expProgram = (ExposureProgram)(Int64)rawMdi.Value;
                    if (MetadataEnumHelper.IsValidExposureProgram(expProgram))
                    {
                        mdi = new GalleryObjectMetadataItem(int.MinValue, FormattedMetadataItemName.ExposureProgram, Resources.Metadata_ExposureProgram, expProgram.ToString(), true);
                    }
                }
            }
            return(mdi);
        }
Esempio n. 3
0
        private IGalleryObjectMetadataItem GetFlashModeMetadataItem()
        {
            IGalleryObjectMetadataItem mdi = null;
            MetadataItem rawMdi            = null;

            if (RawMetadata.TryGetValue(RawMetadataItemName.ExifFlash, out rawMdi))
            {
                if (rawMdi.ExtractedValueType == ExtractedValueType.Int64)
                {
                    FlashMode flashMode = (FlashMode)(Int64)rawMdi.Value;
                    if (MetadataEnumHelper.IsValidFlashMode(flashMode))
                    {
                        mdi = new GalleryObjectMetadataItem(int.MinValue, FormattedMetadataItemName.FlashMode, Resources.Metadata_FlashMode, flashMode.ToString(), true);
                    }
                }
            }
            return(mdi);
        }
Esempio n. 4
0
        private IGalleryObjectMetadataItem GetYResolutionMetadataItem()
        {
            IGalleryObjectMetadataItem mdi = null;
            MetadataItem rawMdi            = null;
            string       resolutionUnit    = String.Empty;

            if (RawMetadata.TryGetValue(RawMetadataItemName.ResolutionYUnit, out rawMdi))
            {
                resolutionUnit = rawMdi.Value.ToString();
            }

            if ((String.IsNullOrEmpty(resolutionUnit)) && (RawMetadata.TryGetValue(RawMetadataItemName.ResolutionUnit, out rawMdi)))
            {
                if (rawMdi.ExtractedValueType == ExtractedValueType.Int64)
                {
                    ResolutionUnit resUnit = (ResolutionUnit)(Int64)rawMdi.Value;
                    if (MetadataEnumHelper.IsValidResolutionUnit(resUnit))
                    {
                        resolutionUnit = resUnit.ToString();
                    }
                }
            }

            if (RawMetadata.TryGetValue(RawMetadataItemName.YResolution, out rawMdi))
            {
                string yResolution;
                if (rawMdi.ExtractedValueType == ExtractedValueType.Fraction)
                {
                    yResolution = Math.Round(((Fraction)rawMdi.Value).ToSingle(), 2).ToString(CultureInfo.InvariantCulture);
                }
                else
                {
                    yResolution = rawMdi.Value.ToString();
                }

                string yResolutionString = String.Concat(yResolution, " ", resolutionUnit);
                mdi = new GalleryObjectMetadataItem(int.MinValue, FormattedMetadataItemName.VerticalResolution, Resources.Metadata_VerticalResolution, yResolutionString, true);
            }

            return(mdi);
        }
Esempio n. 5
0
        private IGalleryObjectMetadataItem GetLightSourceMetadataItem()
        {
            IGalleryObjectMetadataItem mdi = null;
            MetadataItem rawMdi            = null;

            if (RawMetadata.TryGetValue(RawMetadataItemName.ExifLightSource, out rawMdi))
            {
                if (rawMdi.ExtractedValueType == ExtractedValueType.Int64)
                {
                    LightSource lightSource = (LightSource)(Int64)rawMdi.Value;
                    if (MetadataEnumHelper.IsValidLightSource(lightSource))
                    {
                        // Don't bother with it if it is "Unknown"
                        if (lightSource != LightSource.Unknown)
                        {
                            mdi = new GalleryObjectMetadataItem(int.MinValue, FormattedMetadataItemName.LightSource, Resources.Metadata_LightSource, lightSource.ToString(), true);
                        }
                    }
                }
            }
            return(mdi);
        }