]> git.sesse.net Git - nageru/blob - futatabi/frame.proto
Log a warning when we kill a client that is not keeping up.
[nageru] / futatabi / frame.proto
1 syntax = "proto3";
2
3 // Used as header before each frame in a .frames file:
4 //
5 //  1. "Ftbifrm0" (8 bytes, ASCII -- note that no byte repeats)
6 //  2. Length of upcoming FrameHeaderProto (uint32, binary, big endian)
7 //  3. The FrameHeaderProto itself
8 //  4. The actual frame
9
10 message FrameHeaderProto {
11         int32 stream_idx = 1;
12         int64 pts = 2;
13         int64 file_size = 3;  // In bytes of compressed frame. TODO: rename to size.
14         int32 audio_size = 4;  // In bytes of uncompressed 32-bit 48kHz stereo PCM. Can be zero.
15 }
16
17 message StreamContentsProto {
18         int32 stream_idx = 1;
19         repeated int64 pts = 2 [packed=true];
20         repeated int64 file_size = 3 [packed=true];
21         repeated int64 offset = 4 [packed=true];
22         repeated int32 audio_size = 5 [packed=true];
23 }
24
25 message FileContentsProto {
26         repeated StreamContentsProto stream = 1;  // Typically only one.
27 }