[MediaVision] Add Timestamp API for MediaVisionSource (#5444)
authorHaesu Gwon <haesu.gwon@samsung.com>
Wed, 9 Aug 2023 06:19:06 +0000 (15:19 +0900)
committerGitHub <noreply@github.com>
Wed, 9 Aug 2023 06:19:06 +0000 (15:19 +0900)
src/Tizen.Multimedia.Vision/Interop/Interop.MediaVision.Common.cs
src/Tizen.Multimedia.Vision/MediaVision/MediaVisionSource.cs

index c29ff6b..9acbfcc 100644 (file)
@@ -166,6 +166,12 @@ internal static partial class Interop
 
             [DllImport(Libraries.MediaVisionCommon, EntryPoint = "mv_source_get_colorspace")]
             internal static extern int GetColorspace(IntPtr /* mv_source_h */ source, out VisionColorSpace colorspace);
+
+            [DllImport(Libraries.MediaVisionCommon, EntryPoint = "mv_source_set_timestamp")]
+            internal static extern int SetTimestamp(IntPtr source, ulong timestamp);
+
+            [DllImport(Libraries.MediaVisionCommon, EntryPoint = "mv_source_get_timestamp")]
+            internal static extern int GetTimestamp(IntPtr source, out ulong timestamp);
         }
 
         /// <summary>
index a8f8c2f..6cbad93 100755 (executable)
@@ -218,6 +218,26 @@ namespace Tizen.Multimedia.Vision
         }
 
         /// <summary>
+        /// Gets or sets the timestamp of the media source.
+        /// </summary>
+        /// <exception cref="ObjectDisposedException">The <see cref="MediaVisionSource"/> has already been disposed.</exception>
+        /// <since_tizen> 11 </since_tizen>
+        public ulong Timestamp
+        {
+            get
+            {
+                var ret = InteropSource.GetTimestamp(Handle, out ulong timestamp);
+                MultimediaDebug.AssertNoError(ret);
+                return timestamp;
+            }
+            set
+            {
+                var ret = InteropSource.SetTimestamp(Handle, value);
+                MultimediaDebug.AssertNoError(ret);
+            }
+        }
+
+        /// <summary>
         /// Gets the supported colorspaces for <see cref="MediaVisionSource"/>.
         /// </summary>
         /// <since_tizen> 4 </since_tizen>