app-starlock/lib/talk/starChart/handle/other/h264_frame_buffer.dart

23 lines
584 B
Dart
Raw Normal View History

2025-02-21 15:55:35 +08:00
import 'dart:typed_data';
import 'package:star_lock/talk/starChart/proto/talk_data_h264_frame.pb.dart';
class H264FrameBuffer {
List<TalkDataH264Frame> frames = [];
void addFrame(TalkDataH264Frame frame) {
frames.add(frame);
}
Uint8List getCompleteStream() {
final List<int> completeStream = [];
for (final frame in frames) {
// 添加起始码(假设为 0x00 0x00 0x01
completeStream.addAll([0x00, 0x00, 0x01]);
// 添加帧数据
completeStream.addAll(frame.frameData);
}
return Uint8List.fromList(completeStream);
}
}