index.md 8.0 KB

Protocol Documentation

Table of Contents

Top

proto/Channel.proto

ChannelMetadata

Field Type Label Description
title string optional Channel Title
description string optional Channel Description
is_public bool optional Wether to display channel to the public
language string optional ISO_639-1 Language Code

Top

proto/Person.proto

PersonMetadata

Field Type Label Description
first_name string optional
middle_name string optional
last_name string optional
about string optional

Top

proto/Playlist.proto

PlaylistMetadata

Field Type Label Description
title string optional

Top

proto/Series.proto

SeasonMetadata

Field Type Label Description
title string optional
description string optional

SeriesMetadata

Field Type Label Description
title string optional
description string optional

Top

proto/Video.proto

License

License types defined by Joystream

Field Type Label Description
code int32 optional License code defined by Joystream. reference
attribution string optional Text for licenses that require an attribution
custom_text string optional Text for custom license type

MediaType

Codec, Container, MIME media-type information

Field Type Label Description
codec_name string optional Codec corresponding to name field from FFmpeg
container string optional Video container format, eg. 'MP4', 'WebM', 'Ogg' ref
mime_media_type string optional MIME Media Type, eg. 'video/mp4' ref

PublishedBeforeJoystream

Publication status before joystream

Field Type Label Description
is_published bool optional Was video published before joystream platform
timestamp uint32 optional Unix timestamp in milli-seconds

VideoMetadata

Field Type Label Description
title string optional Video Title
description string optional Video Description
duration int32 optional Lengths of video in seconds
media_pixel_height int32 optional Resolution of the video (Height)
media_pixel_width int32 optional Resolution of the video (Width)
media_type MediaType optional Encoding and Container format used
language string optional ISO_639-1 Language Code
license License optional License type for the media
published_before_joystream PublishedBeforeJoystream optional Date of publication
has_marketing bool optional Does video have marketing or advertising in the stream
is_public bool optional Should video be publicy visible yet
is_explicit bool optional Does Video have explicit language or scenes

Scalar Value Types

| .proto Type | Notes | C++ | Java | Python | Go | C# | PHP | Ruby | | ----------- | ----- | --- | ---- | ------ | -- | -- | --- | ---- | | double | | double | double | float | float64 | double | float | Float | | float | | float | float | float | float32 | float | float | Float | | int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | | int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int64 | long | int/long | int64 | long | integer/string | Bignum | | uint32 | Uses variable-length encoding. | uint32 | int | int/long | uint32 | uint | integer | Bignum or Fixnum (as required) | | uint64 | Uses variable-length encoding. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum or Fixnum (as required) | | sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | | sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int64 | long | int/long | int64 | long | integer/string | Bignum | | fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | uint32 | int | int | uint32 | uint | integer | Bignum or Fixnum (as required) | | fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | uint64 | long | int/long | uint64 | ulong | integer/string | Bignum | | sfixed32 | Always four bytes. | int32 | int | int | int32 | int | integer | Bignum or Fixnum (as required) | | sfixed64 | Always eight bytes. | int64 | long | int/long | int64 | long | integer/string | Bignum | | bool | | bool | boolean | boolean | bool | bool | boolean | TrueClass/FalseClass | | string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | string | String | str/unicode | string | string | string | String (UTF-8) | | bytes | May contain any arbitrary sequence of bytes. | string | ByteString | str | []byte | ByteString | string | String (ASCII-8BIT) |