X-Git-Url: https://git.sesse.net/?p=cubemap;a=blobdiff_plain;f=state.proto;h=edb6f777f89fa68ca3a2d8f38c261a3faca18ad9;hp=e6aefb51f7515bf4d6306e6303461d50805cbf9a;hb=20e85bd6901355cc40a6cfb4c0deb7232d9aa63f;hpb=a8c43c314bbda25fa53b487042b4f8f85cb34c2d diff --git a/state.proto b/state.proto index e6aefb5..edb6f77 100644 --- a/state.proto +++ b/state.proto @@ -9,9 +9,11 @@ message ClientProto { optional int32 state = 2; optional bytes request = 3; optional string url = 4; - optional bytes header_or_short_response = 5; + optional bytes header_or_short_response_old = 5; // Only for pre-1.4.0 servers. Use header_or_short_response_index instead. + optional int64 header_or_short_response_index = 21; // Index into CubemapStateProto.short_response_pool. optional int64 header_or_short_response_bytes_sent = 6; optional int64 stream_pos = 7; + optional int64 stream_pos_end = 20 [default=-1]; optional int64 bytes_sent = 10; optional int64 bytes_lost = 11; optional int64 num_loss_events = 12; @@ -22,6 +24,12 @@ message ClientProto { optional bool in_ktls_mode = 19; }; +// Corresponds to struct Stream::FragmentStart. +message FragmentStartProto { + optional int64 byte_position = 1; + optional double pts = 2; +}; + // Corresponds to struct Stream. message StreamProto { optional bytes http_header = 6; @@ -31,6 +39,9 @@ message StreamProto { // Tag 10 is unused from 1.4.0 up (it used to be prebuffering_bytes). optional int64 bytes_received = 3; repeated int64 suitable_starting_point = 9; + repeated FragmentStartProto fragment = 11; + optional int64 first_fragment_index = 12; + optional int64 discontinuity_counter = 13; optional string url = 4; }; @@ -63,6 +74,11 @@ message AcceptorProto { optional bytes private_key = 5; }; +// For deduplicating strings in header_or_short_response. +message ShortResponsePool { + optional bytes header_or_short_response = 1; +}; + message CubemapStateProto { optional int64 serialize_start_sec = 6; optional int64 serialize_start_usec = 7; @@ -70,4 +86,5 @@ message CubemapStateProto { repeated StreamProto streams = 2; repeated InputProto inputs = 5; repeated AcceptorProto acceptors = 8; + repeated ShortResponsePool short_response_pool = 9; };