Browse Source

add writeInt64V2、allow set 3rd vid set fps

gavin.chen 2 years ago
parent
commit
ed3bf900ce
2 changed files with 23 additions and 1 deletions
  1. 7 0
      lib/us/vid_us_data_writer.dart
  2. 16 1
      lib/us/vid_us_image_data.dart

+ 7 - 0
lib/us/vid_us_data_writer.dart

@@ -34,6 +34,13 @@ class VidUsDataWriter {
     _builder.add(data);
   }
 
+  void writeInt64V2(int value) {
+    int low = value & 0xFFFFFFFF;
+    int high = (value >> 32) & 0xFFFFFFFF;
+    writeInt(low);
+    writeInt(high);
+  }
+
   void writeFloat(double value) {
     var data = Uint8List(4);
     data.buffer.asByteData().setFloat32(0, value, Endian.little);

+ 16 - 1
lib/us/vid_us_image_data.dart

@@ -115,7 +115,7 @@ class VidUsImageData {
     imagePositionOffset = writer.data.length + _imageCount * 8 + 4;
     var imagePositionWriter = VidUsDataWriter();
     for (var i = 0; i < _imageCount; i++) {
-      imagePositionWriter.writeInt64(imagePositionOffset);
+      imagePositionWriter.writeInt64V2(imagePositionOffset);
       imagePositionOffset += _imagesList[i].toBytes().length + 4;
     }
     writer.writeBytes(imagePositionWriter.data);
@@ -142,6 +142,21 @@ class VidUsImageData {
       _imagesList.add(getImage(i));
     }
   }
+
+  void setThirdPartFPS(int newFps) {
+    _probe = VidUsProbe(
+      "ThirdPart",
+      VidUsProbeType.Linear,
+      VidUsApplication(
+        "ThirdPart",
+        "ThirdPart",
+        "ThirdPart",
+        "ThirdPart",
+        false,
+      ),
+      newFps.toDouble(),
+    );
+  }
 }
 
 ///Raised when getting data from the downloaded data timeout. depends on the readHeaderTimeout and