syntax = "proto3"; option go_package = "github.com/lbryio/hub/protobuf/go/pb"; package pb; message Claim { oneof type { Stream stream = 1; Channel channel = 2; ClaimList collection = 3; ClaimReference repost = 4; } string title = 8; string description = 9; Source thumbnail = 10; repeated string tags = 11; repeated Language languages = 12; repeated Location locations = 13; } message Stream { Source source = 1; string author = 2; string license = 3; string license_url = 4; int64 release_time = 5; // seconds since UNIX epoch Fee fee = 6; oneof type { Image image = 10; Video video = 11; Audio audio = 12; Software software = 13; } } message Channel { bytes public_key = 1; string email = 2; string website_url = 3; Source cover = 4; ClaimList featured = 5; } message ClaimReference { bytes claim_hash = 1; } message ClaimList { enum ListType { COLLECTION = 0; // play lists, etc DERIVATION = 2; // movie in multiple languages, software for different OSes } ListType list_type = 1; repeated ClaimReference claim_references = 2; } message Source { bytes hash = 1; // SHA-384 hash of the entire unencrypted file string name = 2; uint64 size = 3; string media_type = 4; string url = 5; bytes sd_hash = 6; // SHA-384 hash of the streams manifest blob bytes bt_infohash = 7; // 20-byte SHA1 hash used to reference a torrent file } message Fee { enum Currency { UNKNOWN_CURRENCY = 0; LBC = 1; BTC = 2; USD = 3; } Currency currency = 1; bytes address = 2; uint64 amount = 3; // deweys for LBC/BTC, cents for USD } message Image { uint32 width = 1; uint32 height = 2; } message Video { uint32 width = 1; uint32 height = 2; uint32 duration = 3; Audio audio = 15; } message Audio { uint32 duration = 1; } message Software { enum OS { UNKNOWN_OS = 0; ANY = 1; LINUX = 2; WINDOWS = 3; MAC = 4; ANDROID = 5; IOS = 6; } string os = 1; } // RFC 5646 message Language { Language language = 1; Script script = 2; Location.Country region = 3; // ISO 639-1 enum Language { UNKNOWN_LANGUAGE = 0; en = 1; aa = 2; ab = 3; ae = 4; af = 5; ak = 6; am = 7; an = 8; ar = 9; as = 10; av = 11; ay = 12; az = 13; ba = 14; be = 15; bg = 16; bh = 17; bi = 18; bm = 19; bn = 20; bo = 21; br = 22; bs = 23; ca = 24; ce = 25; ch = 26; co = 27; cr = 28; cs = 29; cu = 30; cv = 31; cy = 32; da = 33; de = 34; dv = 35; dz = 36; ee = 37; el = 38; eo = 39; es = 40; et = 41; eu = 42; fa = 43; ff = 44; fi = 45; fj = 46; fo = 47; fr = 48; fy = 49; ga = 50; gd = 51; gl = 52; gn = 53; gu = 54; gv = 55; ha = 56; he = 57; hi = 58; ho = 59; hr = 60; ht = 61; hu = 62; hy = 63; hz = 64; ia = 65; id = 66; ie = 67; ig = 68; ii = 69; ik = 70; io = 71; is = 72; it = 73; iu = 74; ja = 75; jv = 76; ka = 77; kg = 78; ki = 79; kj = 80; kk = 81; kl = 82; km = 83; kn = 84; ko = 85; kr = 86; ks = 87; ku = 88; kv = 89; kw = 90; ky = 91; la = 92; lb = 93; lg = 94; li = 95; ln = 96; lo = 97; lt = 98; lu = 99; lv = 100; mg = 101; mh = 102; mi = 103; mk = 104; ml = 105; mn = 106; mr = 107; ms = 108; mt = 109; my = 110; na = 111; nb = 112; nd = 113; ne = 114; ng = 115; nl = 116; nn = 117; no = 118; nr = 119; nv = 120; ny = 121; oc = 122; oj = 123; om = 124; or = 125; os = 126; pa = 127; pi = 128; pl = 129; ps = 130; pt = 131; qu = 132; rm = 133; rn = 134; ro = 135; ru = 136; rw = 137; sa = 138; sc = 139; sd = 140; se = 141; sg = 142; si = 143; sk = 144; sl = 145; sm = 146; sn = 147; so = 148; sq = 149; sr = 150; ss = 151; st = 152; su = 153; sv = 154; sw = 155; ta = 156; te = 157; tg = 158; th = 159; ti = 160; tk = 161; tl = 162; tn = 163; to = 164; tr = 165; ts = 166; tt = 167; tw = 168; ty = 169; ug = 170; uk = 171; ur = 172; uz = 173; ve = 174; vi = 175; vo = 176; wa = 177; wo = 178; xh = 179; yi = 180; yo = 181; za = 182; zh = 183; zu = 184; } // ISO 15924 enum Script { UNKNOWN_SCRIPT = 0; Adlm = 1; Afak = 2; Aghb = 3; Ahom = 4; Arab = 5; Aran = 6; Armi = 7; Armn = 8; Avst = 9; Bali = 10; Bamu = 11; Bass = 12; Batk = 13; Beng = 14; Bhks = 15; Blis = 16; Bopo = 17; Brah = 18; Brai = 19; Bugi = 20; Buhd = 21; Cakm = 22; Cans = 23; Cari = 24; Cham = 25; Cher = 26; Cirt = 27; Copt = 28; Cpmn = 29; Cprt = 30; Cyrl = 31; Cyrs = 32; Deva = 33; Dogr = 34; Dsrt = 35; Dupl = 36; Egyd = 37; Egyh = 38; Egyp = 39; Elba = 40; Elym = 41; Ethi = 42; Geok = 43; Geor = 44; Glag = 45; Gong = 46; Gonm = 47; Goth = 48; Gran = 49; Grek = 50; Gujr = 51; Guru = 52; Hanb = 53; Hang = 54; Hani = 55; Hano = 56; Hans = 57; Hant = 58; Hatr = 59; Hebr = 60; Hira = 61; Hluw = 62; Hmng = 63; Hmnp = 64; Hrkt = 65; Hung = 66; Inds = 67; Ital = 68; Jamo = 69; Java = 70; Jpan = 71; Jurc = 72; Kali = 73; Kana = 74; Khar = 75; Khmr = 76; Khoj = 77; Kitl = 78; Kits = 79; Knda = 80; Kore = 81; Kpel = 82; Kthi = 83; Lana = 84; Laoo = 85; Latf = 86; Latg = 87; Latn = 88; Leke = 89; Lepc = 90; Limb = 91; Lina = 92; Linb = 93; Lisu = 94; Loma = 95; Lyci = 96; Lydi = 97; Mahj = 98; Maka = 99; Mand = 100; Mani = 101; Marc = 102; Maya = 103; Medf = 104; Mend = 105; Merc = 106; Mero = 107; Mlym = 108; Modi = 109; Mong = 110; Moon = 111; Mroo = 112; Mtei = 113; Mult = 114; Mymr = 115; Nand = 116; Narb = 117; Nbat = 118; Newa = 119; Nkdb = 120; Nkgb = 121; Nkoo = 122; Nshu = 123; Ogam = 124; Olck = 125; Orkh = 126; Orya = 127; Osge = 128; Osma = 129; Palm = 130; Pauc = 131; Perm = 132; Phag = 133; Phli = 134; Phlp = 135; Phlv = 136; Phnx = 137; Plrd = 138; Piqd = 139; Prti = 140; Qaaa = 141; Qabx = 142; Rjng = 143; Rohg = 144; Roro = 145; Runr = 146; Samr = 147; Sara = 148; Sarb = 149; Saur = 150; Sgnw = 151; Shaw = 152; Shrd = 153; Shui = 154; Sidd = 155; Sind = 156; Sinh = 157; Sogd = 158; Sogo = 159; Sora = 160; Soyo = 161; Sund = 162; Sylo = 163; Syrc = 164; Syre = 165; Syrj = 166; Syrn = 167; Tagb = 168; Takr = 169; Tale = 170; Talu = 171; Taml = 172; Tang = 173; Tavt = 174; Telu = 175; Teng = 176; Tfng = 177; Tglg = 178; Thaa = 179; Thai = 180; Tibt = 181; Tirh = 182; Ugar = 183; Vaii = 184; Visp = 185; Wara = 186; Wcho = 187; Wole = 188; Xpeo = 189; Xsux = 190; Yiii = 191; Zanb = 192; Zinh = 193; Zmth = 194; Zsye = 195; Zsym = 196; Zxxx = 197; Zyyy = 198; Zzzz = 199; } } message Location { Country country = 1; string state = 2; string city = 3; string code = 4; sint32 latitude = 5; sint32 longitude = 6; enum Country { UNKNOWN_COUNTRY = 0; AF = 1; AX = 2; AL = 3; DZ = 4; AS = 5; AD = 6; AO = 7; AI = 8; AQ = 9; AG = 10; AR = 11; AM = 12; AW = 13; AU = 14; AT = 15; AZ = 16; BS = 17; BH = 18; BD = 19; BB = 20; BY = 21; BE = 22; BZ = 23; BJ = 24; BM = 25; BT = 26; BO = 27; BQ = 28; BA = 29; BW = 30; BV = 31; BR = 32; IO = 33; BN = 34; BG = 35; BF = 36; BI = 37; KH = 38; CM = 39; CA = 40; CV = 41; KY = 42; CF = 43; TD = 44; CL = 45; CN = 46; CX = 47; CC = 48; CO = 49; KM = 50; CG = 51; CD = 52; CK = 53; CR = 54; CI = 55; HR = 56; CU = 57; CW = 58; CY = 59; CZ = 60; DK = 61; DJ = 62; DM = 63; DO = 64; EC = 65; EG = 66; SV = 67; GQ = 68; ER = 69; EE = 70; ET = 71; FK = 72; FO = 73; FJ = 74; FI = 75; FR = 76; GF = 77; PF = 78; TF = 79; GA = 80; GM = 81; GE = 82; DE = 83; GH = 84; GI = 85; GR = 86; GL = 87; GD = 88; GP = 89; GU = 90; GT = 91; GG = 92; GN = 93; GW = 94; GY = 95; HT = 96; HM = 97; VA = 98; HN = 99; HK = 100; HU = 101; IS = 102; IN = 103; ID = 104; IR = 105; IQ = 106; IE = 107; IM = 108; IL = 109; IT = 110; JM = 111; JP = 112; JE = 113; JO = 114; KZ = 115; KE = 116; KI = 117; KP = 118; KR = 119; KW = 120; KG = 121; LA = 122; LV = 123; LB = 124; LS = 125; LR = 126; LY = 127; LI = 128; LT = 129; LU = 130; MO = 131; MK = 132; MG = 133; MW = 134; MY = 135; MV = 136; ML = 137; MT = 138; MH = 139; MQ = 140; MR = 141; MU = 142; YT = 143; MX = 144; FM = 145; MD = 146; MC = 147; MN = 148; ME = 149; MS = 150; MA = 151; MZ = 152; MM = 153; NA = 154; NR = 155; NP = 156; NL = 157; NC = 158; NZ = 159; NI = 160; NE = 161; NG = 162; NU = 163; NF = 164; MP = 165; NO = 166; OM = 167; PK = 168; PW = 169; PS = 170; PA = 171; PG = 172; PY = 173; PE = 174; PH = 175; PN = 176; PL = 177; PT = 178; PR = 179; QA = 180; RE = 181; RO = 182; RU = 183; RW = 184; BL = 185; SH = 186; KN = 187; LC = 188; MF = 189; PM = 190; VC = 191; WS = 192; SM = 193; ST = 194; SA = 195; SN = 196; RS = 197; SC = 198; SL = 199; SG = 200; SX = 201; SK = 202; SI = 203; SB = 204; SO = 205; ZA = 206; GS = 207; SS = 208; ES = 209; LK = 210; SD = 211; SR = 212; SJ = 213; SZ = 214; SE = 215; CH = 216; SY = 217; TW = 218; TJ = 219; TZ = 220; TH = 221; TL = 222; TG = 223; TK = 224; TO = 225; TT = 226; TN = 227; TR = 228; TM = 229; TC = 230; TV = 231; UG = 232; UA = 233; AE = 234; GB = 235; US = 236; UM = 237; UY = 238; UZ = 239; VU = 240; VE = 241; VN = 242; VG = 243; VI = 244; WF = 245; EH = 246; YE = 247; ZM = 248; ZW = 249; // UN M.49 Geographic Regions R001 = 250; // World R002 = 251; // Africa R015 = 252; // Northern Africa R012 = 253; // Algeria DZA R818 = 254; // Egypt EGY R434 = 255; // Libya LBY R504 = 256; // Morocco MAR R729 = 257; // Sudan SDN LDC R788 = 258; // Tunisia TUN R732 = 259; // Western Sahara ESH R202 = 260; // Sub-Saharan Africa R014 = 261; // Eastern Africa R086 = 262; // British Indian Ocean Territory IOT R108 = 263; // Burundi BDI LDC LLDC R174 = 264; // Comoros COM LDC SIDS R262 = 265; // Djibouti DJI LDC R232 = 266; // Eritrea ERI LDC R231 = 267; // Ethiopia ETH LDC LLDC R260 = 268; // French Southern Territories ATF R404 = 269; // Kenya KEN R450 = 270; // Madagascar MDG LDC R454 = 271; // Malawi MWI LDC LLDC R480 = 272; // Mauritius MUS SIDS R175 = 273; // Mayotte MYT R508 = 274; // Mozambique MOZ LDC R638 = 275; // Réunion REU R646 = 276; // Rwanda RWA LDC LLDC R690 = 277; // Seychelles SYC SIDS R706 = 278; // Somalia SOM LDC R728 = 279; // South Sudan SSD LDC LLDC R800 = 280; // Uganda UGA LDC LLDC R834 = 281; // United Republic of Tanzania TZA LDC R894 = 282; // Zambia ZMB LDC LLDC R716 = 283; // Zimbabwe ZWE LLDC R017 = 284; // Middle Africa R024 = 285; // Angola AGO LDC R120 = 286; // Cameroon CMR R140 = 287; // Central African Republic CAF LDC LLDC R148 = 288; // Chad TCD LDC LLDC R178 = 289; // Congo COG R180 = 290; // Democratic Republic of the Congo COD LDC R226 = 291; // Equatorial Guinea GNQ R266 = 292; // Gabon GAB R678 = 293; // Sao Tome and Principe STP LDC SIDS R018 = 294; // Southern Africa R072 = 295; // Botswana BWA LLDC R748 = 296; // Eswatini SWZ LLDC R426 = 297; // Lesotho LSO LDC LLDC R516 = 298; // Namibia NAM R710 = 299; // South Africa ZAF R011 = 300; // Western Africa R204 = 301; // Benin BEN LDC R854 = 302; // Burkina Faso BFA LDC LLDC R132 = 303; // Cabo Verde CPV SIDS R384 = 304; // Côte d’Ivoire CIV R270 = 305; // Gambia GMB LDC R288 = 306; // Ghana GHA R324 = 307; // Guinea GIN LDC R624 = 308; // Guinea-Bissau GNB LDC SIDS R430 = 309; // Liberia LBR LDC R466 = 310; // Mali MLI LDC LLDC R478 = 311; // Mauritania MRT LDC R562 = 312; // Niger NER LDC LLDC R566 = 313; // Nigeria NGA R654 = 314; // Saint Helena SHN R686 = 315; // Senegal SEN LDC R694 = 316; // Sierra Leone SLE LDC R768 = 317; // Togo TGO LDC R019 = 318; // Americas R419 = 319; // Latin America and the Caribbean R029 = 320; // Caribbean R660 = 321; // Anguilla AIA SIDS R028 = 322; // Antigua and Barbuda ATG SIDS R533 = 323; // Aruba ABW SIDS R044 = 324; // Bahamas BHS SIDS R052 = 325; // Barbados BRB SIDS R535 = 326; // Bonaire, Sint Eustatius and Saba BES SIDS R092 = 327; // British Virgin Islands VGB SIDS R136 = 328; // Cayman Islands CYM R192 = 329; // Cuba CUB SIDS R531 = 330; // Curaçao CUW SIDS R212 = 331; // Dominica DMA SIDS R214 = 332; // Dominican Republic DOM SIDS R308 = 333; // Grenada GRD SIDS R312 = 334; // Guadeloupe GLP R332 = 335; // Haiti HTI LDC SIDS R388 = 336; // Jamaica JAM SIDS R474 = 337; // Martinique MTQ R500 = 338; // Montserrat MSR SIDS R630 = 339; // Puerto Rico PRI SIDS R652 = 340; // Saint Barthélemy BLM R659 = 341; // Saint Kitts and Nevis KNA SIDS R662 = 342; // Saint Lucia LCA SIDS R663 = 343; // Saint Martin (French Part) MAF R670 = 344; // Saint Vincent and the Grenadines VCT SIDS R534 = 345; // Sint Maarten (Dutch part) SXM SIDS R780 = 346; // Trinidad and Tobago TTO SIDS R796 = 347; // Turks and Caicos Islands TCA R850 = 348; // United States Virgin Islands VIR SIDS R013 = 349; // Central America R084 = 350; // Belize BLZ SIDS R188 = 351; // Costa Rica CRI R222 = 352; // El Salvador SLV R320 = 353; // Guatemala GTM R340 = 354; // Honduras HND R484 = 355; // Mexico MEX R558 = 356; // Nicaragua NIC R591 = 357; // Panama PAN R005 = 358; // South America R032 = 359; // Argentina ARG R068 = 360; // Bolivia (Plurinational State of) BOL LLDC R074 = 361; // Bouvet Island BVT R076 = 362; // Brazil BRA R152 = 363; // Chile CHL R170 = 364; // Colombia COL R218 = 365; // Ecuador ECU R238 = 366; // Falkland Islands (Malvinas) FLK R254 = 367; // French Guiana GUF R328 = 368; // Guyana GUY SIDS R600 = 369; // Paraguay PRY LLDC R604 = 370; // Peru PER R239 = 371; // South Georgia and the South Sandwich Islands SGS R740 = 372; // Suriname SUR SIDS R858 = 373; // Uruguay URY R862 = 374; // Venezuela (Bolivarian Republic of) VEN R021 = 375; // Northern America R060 = 376; // Bermuda BMU R124 = 377; // Canada CAN R304 = 378; // Greenland GRL R666 = 379; // Saint Pierre and Miquelon SPM R840 = 380; // United States of America USA R010 = 381; // Antarctica ATA R142 = 382; // Asia R143 = 383; // Central Asia R398 = 384; // Kazakhstan KAZ LLDC R417 = 385; // Kyrgyzstan KGZ LLDC R762 = 386; // Tajikistan TJK LLDC R795 = 387; // Turkmenistan TKM LLDC R860 = 388; // Uzbekistan UZB LLDC R030 = 389; // Eastern Asia R156 = 390; // China CHN R344 = 391; // China, Hong Kong Special Administrative Region HKG R446 = 392; // China, Macao Special Administrative Region MAC R408 = 393; // Democratic People's Republic of Korea PRK R392 = 394; // Japan JPN R496 = 395; // Mongolia MNG LLDC R410 = 396; // Republic of Korea KOR R035 = 397; // South-eastern Asia R096 = 398; // Brunei Darussalam BRN R116 = 399; // Cambodia KHM LDC R360 = 400; // Indonesia IDN R418 = 401; // Lao People's Democratic Republic LAO LDC LLDC R458 = 402; // Malaysia MYS R104 = 403; // Myanmar MMR LDC R608 = 404; // Philippines PHL R702 = 405; // Singapore SGP SIDS R764 = 406; // Thailand THA R626 = 407; // Timor-Leste TLS LDC SIDS R704 = 408; // Viet Nam VNM R034 = 409; // Southern Asia R004 = 410; // Afghanistan AFG LDC LLDC R050 = 411; // Bangladesh BGD LDC R064 = 412; // Bhutan BTN LDC LLDC R356 = 413; // India IND R364 = 414; // Iran (Islamic Republic of) IRN R462 = 415; // Maldives MDV SIDS R524 = 416; // Nepal NPL LDC LLDC R586 = 417; // Pakistan PAK R144 = 418; // Sri Lanka LKA R145 = 419; // Western Asia R051 = 420; // Armenia ARM LLDC R031 = 421; // Azerbaijan AZE LLDC R048 = 422; // Bahrain BHR R196 = 423; // Cyprus CYP R268 = 424; // Georgia GEO R368 = 425; // Iraq IRQ R376 = 426; // Israel ISR R400 = 427; // Jordan JOR R414 = 428; // Kuwait KWT R422 = 429; // Lebanon LBN R512 = 430; // Oman OMN R634 = 431; // Qatar QAT R682 = 432; // Saudi Arabia SAU R275 = 433; // State of Palestine PSE R760 = 434; // Syrian Arab Republic SYR R792 = 435; // Turkey TUR R784 = 436; // United Arab Emirates ARE R887 = 437; // Yemen YEM LDC R150 = 438; // Europe R151 = 439; // Eastern Europe R112 = 440; // Belarus BLR R100 = 441; // Bulgaria BGR R203 = 442; // Czechia CZE R348 = 443; // Hungary HUN R616 = 444; // Poland POL R498 = 445; // Republic of Moldova MDA LLDC R642 = 446; // Romania ROU R643 = 447; // Russian Federation RUS R703 = 448; // Slovakia SVK R804 = 449; // Ukraine UKR R154 = 450; // Northern Europe R248 = 451; // Åland Islands ALA R830 = 452; // Channel Islands R831 = 453; // Guernsey GGY R832 = 454; // Jersey JEY R680 = 455; // Sark R208 = 456; // Denmark DNK R233 = 457; // Estonia EST R234 = 458; // Faroe Islands FRO R246 = 459; // Finland FIN R352 = 460; // Iceland ISL R372 = 461; // Ireland IRL R833 = 462; // Isle of Man IMN R428 = 463; // Latvia LVA R440 = 464; // Lithuania LTU R578 = 465; // Norway NOR R744 = 466; // Svalbard and Jan Mayen Islands SJM R752 = 467; // Sweden SWE R826 = 468; // United Kingdom of Great Britain and Northern Ireland GBR R039 = 469; // Southern Europe R008 = 470; // Albania ALB R020 = 471; // Andorra AND R070 = 472; // Bosnia and Herzegovina BIH R191 = 473; // Croatia HRV R292 = 474; // Gibraltar GIB R300 = 475; // Greece GRC R336 = 476; // Holy See VAT R380 = 477; // Italy ITA R470 = 478; // Malta MLT R499 = 479; // Montenegro MNE R807 = 480; // North Macedonia MKD LLDC R620 = 481; // Portugal PRT R674 = 482; // San Marino SMR R688 = 483; // Serbia SRB R705 = 484; // Slovenia SVN R724 = 485; // Spain ESP R155 = 486; // Western Europe R040 = 487; // Austria AUT R056 = 488; // Belgium BEL R250 = 489; // France FRA R276 = 490; // Germany DEU R438 = 491; // Liechtenstein LIE R442 = 492; // Luxembourg LUX R492 = 493; // Monaco MCO R528 = 494; // Netherlands NLD R756 = 495; // Switzerland CHE R009 = 496; // Oceania R053 = 497; // Australia and New Zealand R036 = 498; // Australia AUS R162 = 499; // Christmas Island CXR R166 = 500; // Cocos (Keeling) Islands CCK R334 = 501; // Heard Island and McDonald Islands HMD R554 = 502; // New Zealand NZL R574 = 503; // Norfolk Island NFK R054 = 504; // Melanesia R242 = 505; // Fiji FJI SIDS R540 = 506; // New Caledonia NCL SIDS R598 = 507; // Papua New Guinea PNG SIDS R090 = 508; // Solomon Islands SLB LDC SIDS R548 = 509; // Vanuatu VUT LDC SIDS R057 = 510; // Micronesia R316 = 511; // Guam GUM SIDS R296 = 512; // Kiribati KIR LDC SIDS R584 = 513; // Marshall Islands MHL SIDS R583 = 514; // Micronesia (Federated States of) FSM SIDS R520 = 515; // Nauru NRU SIDS R580 = 516; // Northern Mariana Islands MNP SIDS R585 = 517; // Palau PLW SIDS R581 = 518; // United States Minor Outlying Islands UMI R061 = 519; // Polynesia R016 = 520; // American Samoa ASM SIDS R184 = 521; // Cook Islands COK SIDS R258 = 522; // French Polynesia PYF SIDS R570 = 523; // Niue NIU SIDS R612 = 524; // Pitcairn PCN R882 = 525; // Samoa WSM SIDS R772 = 526; // Tokelau TKL R776 = 527; // Tonga TON SIDS R798 = 528; // Tuvalu TUV LDC SIDS R876 = 529; // Wallis and Futuna Islands WLF } }