clipper/proto/media_set.proto

48 lines
869 B
Protocol Buffer

syntax = "proto3";
package media_set;
option go_package = "pb/media_set";
import "google/protobuf/duration.proto";
message MediaSet {
message Audio {
int32 channels = 1;
int64 approx_frames = 2;
int64 frames = 3;
int32 sample_rate = 4;
int32 youtube_itag = 5;
string mime_type = 6;
};
message Video {
google.protobuf.Duration duration = 1;
int32 youtube_itag = 2;
string mime_type = 3;
};
string id = 1;
string youtube_id = 2;
Audio audio = 3;
Video video = 4;
};
message GetAudioProgress {
float percent_completed = 2;
repeated int32 peaks = 1;
}
message GetRequest {
string youtube_id = 1;
}
message GetAudioRequest {
string id = 1;
int32 num_bins = 2;
}
service MediaSetService {
rpc Get(GetRequest) returns (MediaSet) {}
rpc GetAudio(GetAudioRequest) returns (stream GetAudioProgress) {}
}