Skip to content

Commit

Permalink
add additionally required proto files
Browse files Browse the repository at this point in the history
  • Loading branch information
photovoltex committed Dec 16, 2024
1 parent 1a97247 commit 58b0b3f
Show file tree
Hide file tree
Showing 26 changed files with 546 additions and 0 deletions.
35 changes: 35 additions & 0 deletions protocol/proto/audio_format.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
syntax = "proto3";

package spotify.stream_reporting_esperanto.proto;

option java_package = "com.spotify.stream_reporting_esperanto.proto";
option objc_class_prefix = "ESP";

enum AudioFormat {
FORMAT_UNKNOWN = 0;
FORMAT_OGG_VORBIS_96 = 1;
FORMAT_OGG_VORBIS_160 = 2;
FORMAT_OGG_VORBIS_320 = 3;
FORMAT_MP3_256 = 4;
FORMAT_MP3_320 = 5;
FORMAT_MP3_160 = 6;
FORMAT_MP3_96 = 7;
FORMAT_MP3_160_ENCRYPTED = 8;
FORMAT_AAC_24 = 9;
FORMAT_AAC_48 = 10;
FORMAT_MP4_128 = 11;
FORMAT_MP4_128_DUAL = 12;
FORMAT_MP4_128_CBCS = 13;
FORMAT_MP4_256 = 14;
FORMAT_MP4_256_DUAL = 15;
FORMAT_MP4_256_CBCS = 16;
FORMAT_FLAC_FLAC = 17;
FORMAT_MP4_FLAC = 18;
FORMAT_MP4_Unknown = 19;
FORMAT_MP3_Unknown = 20;
FORMAT_XHE_AAC_12 = 21;
FORMAT_XHE_AAC_16 = 22;
FORMAT_XHE_AAC_24 = 23;
FORMAT_FLAC_FLAC_24 = 24;
}

19 changes: 19 additions & 0 deletions protocol/proto/collection_platform_items.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
syntax = "proto3";

package spotify.collection_platform.proto;

option java_package = "com.spotify.collection_platform.esperanto.proto";
option java_multiple_files = true;
option objc_class_prefix = "ESP";

message CollectionPlatformItem {
string uri = 1;
int64 add_time = 2;
}

message CollectionPlatformContextItem {
string uri = 1;
int64 add_time = 2;
string context_uri = 3;
}

11 changes: 11 additions & 0 deletions protocol/proto/es_pauseresume_origin.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
syntax = "proto3";

package spotify.player.esperanto.proto;

option java_package = "com.spotify.player.esperanto.proto";
option objc_class_prefix = "ESP";

message PauseResumeOrigin {
string feature_identifier = 1;
}

6 changes: 6 additions & 0 deletions protocol/proto/esperanto_options.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
syntax = "proto3";

package spotify.esperanto;

import "google/protobuf/descriptor.proto";

19 changes: 19 additions & 0 deletions protocol/proto/lens-model.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
// Extracted from: Spotify 1.2.52.442 (windows)

syntax = "proto3";

package spotify.lens.model.proto;

option java_package = "com.spotify.lens.model.proto";
option java_outer_classname = "LensModelProto";
option optimize_for = CODE_SIZE;

message Lens {
string identifier = 1;
}

message LensState {
string identifier = 1;
bytes revision = 2;
}

19 changes: 19 additions & 0 deletions protocol/proto/media.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
// Extracted from: Spotify 1.2.52.442 (windows)

syntax = "proto3";

package spotify.common.media;

option java_package = "com.spotify.common.proto";
option optimize_for = CODE_SIZE;

enum AudioQuality {
DEFAULT = 0;
LOW = 1;
NORMAL = 2;
HIGH = 3;
VERY_HIGH = 4;
HIFI = 5;
HIFI_24 = 6;
}

12 changes: 12 additions & 0 deletions protocol/proto/pause_resume_origin.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// Extracted from: Spotify 1.2.52.442 (windows)

syntax = "proto2";

package spotify.player.proto;

option optimize_for = CODE_SIZE;

message PauseResumeOrigin {
optional string feature_identifier = 1;
}

20 changes: 20 additions & 0 deletions protocol/proto/play_history.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// Extracted from: Spotify 1.2.52.442 (windows)

syntax = "proto2";

package spotify.player.proto.transfer;

option optimize_for = CODE_SIZE;

message PlayHistory {
message Item {
optional string context_id = 1;
optional string uid = 2;
optional bool disliked = 3;
repeated transfer.PlayHistory.Item children = 4;
}

repeated transfer.PlayHistory.Item backward_items = 1;
repeated transfer.PlayHistory.Item forward_items = 2;
}

13 changes: 13 additions & 0 deletions protocol/proto/playback_stack.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
syntax = "proto3";

package spotify.stream_reporting_esperanto.proto;

option java_package = "com.spotify.stream_reporting_esperanto.proto";
option objc_class_prefix = "ESP";

enum PlaybackStack {
BOOMBOX = 0;
BETAMAX = 1;
UNKNOWN = 2;
}

14 changes: 14 additions & 0 deletions protocol/proto/playback_stack_v2.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
syntax = "proto3";

package spotify.stream_reporting_esperanto.proto;

option java_package = "com.spotify.stream_reporting_esperanto.proto";
option objc_class_prefix = "ESP";

enum PlaybackStackV2 {
PLAYBACK_STACK_UNKNOWN = 0;
PLAYBACK_STACK_BOOMBOX = 1;
PLAYBACK_STACK_BETAMAX = 2;
PLAYBACK_STACK_KUBRICK = 3;
}

14 changes: 14 additions & 0 deletions protocol/proto/playback_state.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
syntax = "proto3";

package spotify.stream_reporting_esperanto.proto;

option java_package = "com.spotify.stream_reporting_esperanto.proto";
option objc_class_prefix = "ESP";

enum PlaybackState {
ACTIVE = 0;
PAUSED = 1;
SUSPENDED = 2;
INVALID_PLAYBACK_STATE = 3;
}

17 changes: 17 additions & 0 deletions protocol/proto/policy/supported_link_types_in_playlists.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
syntax = "proto3";

package spotify.playlist.cosmos.proto;

option java_package = "com.spotify.playlist.policy.proto";
option java_multiple_files = true;

enum LinkType {
EMPTY = 0;
ARTIST = 1;
ALBUM = 2;
TRACK = 4;
LOCAL_TRACK = 9;
SHOW = 62;
EPISODE = 63;
}

9 changes: 9 additions & 0 deletions protocol/proto/show_offline_state.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
syntax = "proto2";

package spotify.show_cosmos.proto;

message ShowOfflineState {
optional string offline_state = 1;
optional uint32 sync_progress = 2;
}

16 changes: 16 additions & 0 deletions protocol/proto/signal-model.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// Extracted from: Spotify 1.2.52.442 (windows)

syntax = "proto3";

package spotify.playlist.signal.proto;

option java_package = "com.spotify.playlist_signal.model.proto";
option java_outer_classname = "SignalModelProto";
option optimize_for = CODE_SIZE;

message Signal {
string identifier = 1;
bytes data = 2;
bytes client_payload = 3;
}

18 changes: 18 additions & 0 deletions protocol/proto/spotify/audiobookcashier/v1/audiobook_price.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
syntax = "proto3";

package spotify.audiobookcashier.v1;

option java_package = "com.spotify.audiobookcashier.v1";
option java_multiple_files = true;

message Price {
double amount = 1;
string currency = 2;
string formatted_price = 3;
}

message AudiobookPrice {
.spotify.audiobookcashier.v1.Price final_price = 1;
.spotify.audiobookcashier.v1.Price final_list_price = 2;
}

9 changes: 9 additions & 0 deletions protocol/proto/state_restore/automix_rules.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
syntax = "proto2";

package spotify.player.proto.state_restore;

message AutomixRules {
required bool automix = 1;
required string current_track_uri = 2;
}

11 changes: 11 additions & 0 deletions protocol/proto/state_restore/automix_talk_rules.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
syntax = "proto2";

package spotify.player.proto.state_restore;

import "state_restore/provided_track.proto";

message AutomixTalkRules {
optional ProvidedTrack current_track = 1;
optional int64 narration_duration = 2;
}

10 changes: 10 additions & 0 deletions protocol/proto/state_restore/context_loader.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
syntax = "proto2";

package spotify.player.proto.state_restore;

import "context.proto";

message ContextLoader {
required Context context = 1;
}

23 changes: 23 additions & 0 deletions protocol/proto/state_restore/context_player_restorable.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
syntax = "proto2";

package spotify.player.proto.state_restore;

import "state_restore/play_history.proto";
import "state_restore/player_model.proto";
import "state_restore/mft_state.proto";
import "state_restore/mft_context_history.proto";
import "state_restore/mft_fallback_page_history.proto";
import "state_restore/pns_capper.proto";

message ContextPlayerRestorable {
reserved 8;
required int32 version = 1;
optional string version_suffix = 2;
required PlayerModel player_model = 3;
required PlayHistory play_history = 4;
required MftState mft_can_play_checker = 5;
required MftContextHistory mft_context_history = 6;
required MftFallbackPageHistory mft_fallback_page_history = 7;
optional PnsCapper pns_capper = 9;
}

59 changes: 59 additions & 0 deletions protocol/proto/state_restore/context_player_state.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
syntax = "proto2";

package spotify.player.proto.state_restore;

import "context_index.proto";
import "restrictions.proto";
import "play_origin.proto";
import "state_restore/provided_track.proto";
import "context_player_options.proto";
import "prepare_play_options.proto";
import "state_restore/playback_quality.proto";

message ContextPlayerState {
message ContextMetadataEntry {
optional string key = 1;
optional string value = 2;
}

message PageMetadataEntry {
optional string key = 1;
optional string value = 2;
}

message ModesEntry {
optional string key = 1;
optional string value = 2;
}

optional uint64 timestamp = 1;
optional string context_uri = 2;
optional string context_url = 3;
optional Restrictions context_restrictions = 4;
optional PlayOrigin play_origin = 5;
optional ContextIndex index = 6;
optional ProvidedTrack track = 7;
optional bytes playback_id = 8;
optional PlaybackQuality playback_quality = 9;
optional double playback_speed = 10;
optional uint64 position_as_of_timestamp = 11;
optional uint64 duration = 12;
optional bool is_playing = 13;
optional bool is_paused = 14;
optional bool is_buffering = 15;
optional bool is_system_initiated = 16;
optional ContextPlayerOptions options = 17;
optional Restrictions restrictions = 18;
repeated string suppressions = 19;
repeated ProvidedTrack prev_tracks = 20;
repeated ProvidedTrack next_tracks = 21;
repeated ContextPlayerState.ContextMetadataEntry context_metadata = 22;
repeated ContextPlayerState.PageMetadataEntry page_metadata = 23;
optional string session_id = 24;
optional uint64 queue_revision = 25;
optional AudioStream audio_stream = 26;
repeated string signals = 27;
repeated ContextPlayerState.ModesEntry modes = 28;
optional string session_command_id = 29;
}

Loading

0 comments on commit 58b0b3f

Please sign in to comment.