github.com/boki/go-xmp@v1.0.1/models/itunes/enum.go (about) 1 // Copyright (c) 2017-2018 Alexander Eichhorn 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"): you may 4 // not use this file except in compliance with the License. You may obtain 5 // a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11 // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12 // License for the specific language governing permissions and limitations 13 // under the License. 14 15 // http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/QuickTime.html 16 // http://shadowofged.blogspot.ca/2008/06/itunes-content-ratings.html 17 18 package itunes 19 20 import ( 21 "bytes" 22 "strconv" 23 ) 24 25 type MediaType int 26 27 const ( 28 MediaTypeHomeVideo MediaType = 0 // 0 = Movie (deprecated, use 9 instead) 29 MediaTypeMusic MediaType = 1 // 1 = Normal (Music) 30 MediaTypeAudiobook MediaType = 2 // 2 = Audiobook 31 MediaTypeBookmark MediaType = 5 // 5 = Whacked Bookmark 32 MediaTypeMusicVideo MediaType = 6 // 6 = Music Video 33 MediaTypeMovie MediaType = 9 // 9 = Short Film / Movie 34 MediaTypeTVShow MediaType = 10 // 10 = TV Show 35 MediaTypeBooklet MediaType = 11 // 11 = Booklet 36 MediaTypeRingtone MediaType = 14 // 14 = Ringtone 37 MediaTypePodcast MediaType = 21 // 21 = Podcast 38 ) 39 40 func (x MediaType) String() string { 41 switch x { 42 case MediaTypeHomeVideo: 43 return "Home Video" 44 case MediaTypeMusic: 45 return "Music" 46 case MediaTypeAudiobook: 47 return "Audiobook" 48 case MediaTypeBookmark: 49 return "Whacked Bookmark" 50 case MediaTypeMusicVideo: 51 return "Music Video" 52 case MediaTypeMovie: 53 return "Movie" 54 case MediaTypeTVShow: 55 return "TV Show" 56 case MediaTypeBooklet: 57 return "Booklet" 58 case MediaTypeRingtone: 59 return "Ringtone" 60 case MediaTypePodcast: 61 return "Podcast" 62 default: 63 buf := bytes.Buffer{} 64 buf.WriteByte('(') 65 buf.WriteString(strconv.FormatInt(int64(x), 10)) 66 buf.WriteByte(')') 67 return buf.String() 68 } 69 } 70 71 type RatingCode int 72 73 const ( 74 RatingCodeNone RatingCode = 0 // 0 = None 75 RatingCodeExplicit RatingCode = 1 // 1 = Explicit 76 RatingCodeClean RatingCode = 2 // 2 = Clean 77 RatingCodeExplicitOld RatingCode = 4 // 4 = Explicit (old) 78 ) 79 80 type PlayGapMode int 81 82 const ( 83 PlayGapInsertGap PlayGapMode = 0 // Insert Gap 84 PlayGapNoGap PlayGapMode = 1 // No Gap 85 ) 86 87 type AppleStoreAccountType int 88 89 const ( 90 AppleStoreAccountTypeITunes AppleStoreAccountType = 0 91 AppleStoreAccountTypeAOL AppleStoreAccountType = 1 92 ) 93 94 type LocationRole int 95 96 const ( 97 LocationRoleShooting LocationRole = 0 98 LocationRoleReal LocationRole = 1 99 LocationRoleFictional LocationRole = 2 100 ) 101 102 type AppleStoreCountry int 103 104 const ( 105 AppleStoreUSA AppleStoreCountry = 143441 // United States 106 AppleStoreFRA AppleStoreCountry = 143442 // France 107 AppleStoreDEU AppleStoreCountry = 143443 // Germany 108 AppleStoreGBR AppleStoreCountry = 143444 // United Kingdom 109 AppleStoreAUT AppleStoreCountry = 143445 // Austria 110 AppleStoreBEL AppleStoreCountry = 143446 // Belgium 111 AppleStoreFIN AppleStoreCountry = 143447 // Finland 112 AppleStoreGRC AppleStoreCountry = 143448 // Greece 113 AppleStoreIRL AppleStoreCountry = 143449 // Ireland 114 AppleStoreITA AppleStoreCountry = 143450 // Italy 115 AppleStoreLUX AppleStoreCountry = 143451 // Luxembourg 116 AppleStoreNLD AppleStoreCountry = 143452 // Netherlands 117 AppleStorePRT AppleStoreCountry = 143453 // Portugal 118 AppleStoreESP AppleStoreCountry = 143454 // Spain 119 AppleStoreCAN AppleStoreCountry = 143455 // Canada 120 AppleStoreSWE AppleStoreCountry = 143456 // Sweden 121 AppleStoreNOR AppleStoreCountry = 143457 // Norway 122 AppleStoreDNK AppleStoreCountry = 143458 // Denmark 123 AppleStoreCHE AppleStoreCountry = 143459 // Switzerland 124 AppleStoreAUS AppleStoreCountry = 143460 // Australia 125 AppleStoreNZL AppleStoreCountry = 143461 // New Zealand 126 AppleStoreJPN AppleStoreCountry = 143462 // Japan 127 AppleStoreHKG AppleStoreCountry = 143463 // Hong Kong 128 AppleStoreSGP AppleStoreCountry = 143464 // Singapore 129 AppleStoreCHN AppleStoreCountry = 143465 // China 130 AppleStoreKOR AppleStoreCountry = 143466 // Republic of Korea 131 AppleStoreIND AppleStoreCountry = 143467 // India 132 AppleStoreMEX AppleStoreCountry = 143468 // Mexico 133 AppleStoreRUS AppleStoreCountry = 143469 // Russia 134 AppleStoreTWN AppleStoreCountry = 143470 // Taiwan 135 AppleStoreVNM AppleStoreCountry = 143471 // Vietnam 136 AppleStoreZAF AppleStoreCountry = 143472 // South Africa 137 AppleStoreMYS AppleStoreCountry = 143473 // Malaysia 138 AppleStorePHL AppleStoreCountry = 143474 // Philippines 139 AppleStoreTHA AppleStoreCountry = 143475 // Thailand 140 AppleStoreIDN AppleStoreCountry = 143476 // Indonesia 141 AppleStorePAK AppleStoreCountry = 143477 // Pakistan 142 AppleStorePOL AppleStoreCountry = 143478 // Poland 143 AppleStoreSAU AppleStoreCountry = 143479 // Saudi Arabia 144 AppleStoreTUR AppleStoreCountry = 143480 // Turkey 145 AppleStoreARE AppleStoreCountry = 143481 // United Arab Emirates 146 AppleStoreHUN AppleStoreCountry = 143482 // Hungary 147 AppleStoreCHL AppleStoreCountry = 143483 // Chile 148 AppleStoreNPL AppleStoreCountry = 143484 // Nepal 149 AppleStorePAN AppleStoreCountry = 143485 // Panama 150 AppleStoreLKA AppleStoreCountry = 143486 // Sri Lanka 151 AppleStoreROU AppleStoreCountry = 143487 // Romania 152 AppleStoreCZE AppleStoreCountry = 143489 // Czech Republic 153 AppleStoreISR AppleStoreCountry = 143491 // Israel 154 AppleStoreUKR AppleStoreCountry = 143492 // Ukraine 155 AppleStoreKWT AppleStoreCountry = 143493 // Kuwait 156 AppleStoreHRV AppleStoreCountry = 143494 // Croatia 157 AppleStoreCRI AppleStoreCountry = 143495 // Costa Rica 158 AppleStoreSVK AppleStoreCountry = 143496 // Slovakia 159 AppleStoreLBN AppleStoreCountry = 143497 // Lebanon 160 AppleStoreQAT AppleStoreCountry = 143498 // Qatar 161 AppleStoreSVN AppleStoreCountry = 143499 // Slovenia 162 AppleStoreCOL AppleStoreCountry = 143501 // Colombia 163 AppleStoreVEN AppleStoreCountry = 143502 // Venezuela 164 AppleStoreBRA AppleStoreCountry = 143503 // Brazil 165 AppleStoreGTM AppleStoreCountry = 143504 // Guatemala 166 AppleStoreARG AppleStoreCountry = 143505 // Argentina 167 AppleStoreSLV AppleStoreCountry = 143506 // El Salvador 168 AppleStorePER AppleStoreCountry = 143507 // Peru 169 AppleStoreDOM AppleStoreCountry = 143508 // Dominican Republic 170 AppleStoreECU AppleStoreCountry = 143509 // Ecuador 171 AppleStoreHND AppleStoreCountry = 143510 // Honduras 172 AppleStoreJAM AppleStoreCountry = 143511 // Jamaica 173 AppleStoreNIC AppleStoreCountry = 143512 // Nicaragua 174 AppleStorePRY AppleStoreCountry = 143513 // Paraguay 175 AppleStoreURY AppleStoreCountry = 143514 // Uruguay 176 AppleStoreMAC AppleStoreCountry = 143515 // Macau 177 AppleStoreEGY AppleStoreCountry = 143516 // Egypt 178 AppleStoreKAZ AppleStoreCountry = 143517 // Kazakhstan 179 AppleStoreEST AppleStoreCountry = 143518 // Estonia 180 AppleStoreLVA AppleStoreCountry = 143519 // Latvia 181 AppleStoreLTU AppleStoreCountry = 143520 // Lithuania 182 AppleStoreMLT AppleStoreCountry = 143521 // Malta 183 AppleStoreMDA AppleStoreCountry = 143523 // Moldova 184 AppleStoreARM AppleStoreCountry = 143524 // Armenia 185 AppleStoreBWA AppleStoreCountry = 143525 // Botswana 186 AppleStoreBGR AppleStoreCountry = 143526 // Bulgaria 187 AppleStoreJOR AppleStoreCountry = 143528 // Jordan 188 AppleStoreKEN AppleStoreCountry = 143529 // Kenya 189 AppleStoreMKD AppleStoreCountry = 143530 // Macedonia 190 AppleStoreMDG AppleStoreCountry = 143531 // Madagascar 191 AppleStoreMLI AppleStoreCountry = 143532 // Mali 192 AppleStoreMUS AppleStoreCountry = 143533 // Mauritius 193 AppleStoreNER AppleStoreCountry = 143534 // Niger 194 AppleStoreSEN AppleStoreCountry = 143535 // Senegal 195 AppleStoreTUN AppleStoreCountry = 143536 // Tunisia 196 AppleStoreUGA AppleStoreCountry = 143537 // Uganda 197 AppleStoreAIA AppleStoreCountry = 143538 // Anguilla 198 AppleStoreBHS AppleStoreCountry = 143539 // Bahamas 199 AppleStoreATG AppleStoreCountry = 143540 // Antigua and Barbuda 200 AppleStoreBRB AppleStoreCountry = 143541 // Barbados 201 AppleStoreBMU AppleStoreCountry = 143542 // Bermuda 202 AppleStoreVGB AppleStoreCountry = 143543 // British Virgin Islands 203 AppleStoreCYM AppleStoreCountry = 143544 // Cayman Islands 204 AppleStoreDMA AppleStoreCountry = 143545 // Dominica 205 AppleStoreGRD AppleStoreCountry = 143546 // Grenada 206 AppleStoreMSR AppleStoreCountry = 143547 // Montserrat 207 AppleStoreKNA AppleStoreCountry = 143548 // St. Kitts and Nevis 208 AppleStoreLCA AppleStoreCountry = 143549 // St. Lucia 209 AppleStoreVCT AppleStoreCountry = 143550 // St. Vincent and The Grenadines 210 AppleStoreTTO AppleStoreCountry = 143551 // Trinidad and Tobago 211 AppleStoreTCA AppleStoreCountry = 143552 // Turks and Caicos 212 AppleStoreGUY AppleStoreCountry = 143553 // Guyana 213 AppleStoreSUR AppleStoreCountry = 143554 // Suriname 214 AppleStoreBLZ AppleStoreCountry = 143555 // Belize 215 AppleStoreBOL AppleStoreCountry = 143556 // Bolivia 216 AppleStoreCYP AppleStoreCountry = 143557 // Cyprus 217 AppleStoreISL AppleStoreCountry = 143558 // Iceland 218 AppleStoreBHR AppleStoreCountry = 143559 // Bahrain 219 AppleStoreBRN AppleStoreCountry = 143560 // Brunei Darussalam 220 AppleStoreNGA AppleStoreCountry = 143561 // Nigeria 221 AppleStoreOMN AppleStoreCountry = 143562 // Oman 222 AppleStoreDZA AppleStoreCountry = 143563 // Algeria 223 AppleStoreAGO AppleStoreCountry = 143564 // Angola 224 AppleStoreBLR AppleStoreCountry = 143565 // Belarus 225 AppleStoreUZB AppleStoreCountry = 143566 // Uzbekistan 226 AppleStoreAZE AppleStoreCountry = 143568 // Azerbaijan 227 AppleStoreYEM AppleStoreCountry = 143571 // Yemen 228 AppleStoreTZA AppleStoreCountry = 143572 // Tanzania 229 AppleStoreGHA AppleStoreCountry = 143573 // Ghana 230 AppleStoreALB AppleStoreCountry = 143575 // Albania 231 AppleStoreBEN AppleStoreCountry = 143576 // Benin 232 AppleStoreBTN AppleStoreCountry = 143577 // Bhutan 233 AppleStoreBFA AppleStoreCountry = 143578 // Burkina Faso 234 AppleStoreKHM AppleStoreCountry = 143579 // Cambodia 235 AppleStoreCPV AppleStoreCountry = 143580 // Cape Verde 236 AppleStoreTCD AppleStoreCountry = 143581 // Chad 237 AppleStoreCOG AppleStoreCountry = 143582 // Republic of the Congo 238 AppleStoreFJI AppleStoreCountry = 143583 // Fiji 239 AppleStoreGMB AppleStoreCountry = 143584 // Gambia 240 AppleStoreGNB AppleStoreCountry = 143585 // Guinea-Bissau 241 AppleStoreKGZ AppleStoreCountry = 143586 // Kyrgyzstan 242 AppleStoreLAO AppleStoreCountry = 143587 // Lao People's Democratic Republic 243 AppleStoreLBR AppleStoreCountry = 143588 // Liberia 244 AppleStoreMWI AppleStoreCountry = 143589 // Malawi 245 AppleStoreMRT AppleStoreCountry = 143590 // Mauritania 246 AppleStoreFSM AppleStoreCountry = 143591 // Federated States of Micronesia 247 AppleStoreMNG AppleStoreCountry = 143592 // Mongolia 248 AppleStoreMOZ AppleStoreCountry = 143593 // Mozambique 249 AppleStoreNAM AppleStoreCountry = 143594 // Namibia 250 AppleStorePLW AppleStoreCountry = 143595 // Palau 251 AppleStorePNG AppleStoreCountry = 143597 // Papua New Guinea 252 AppleStoreSTP AppleStoreCountry = 143598 // Sao Tome and Principe 253 AppleStoreSYC AppleStoreCountry = 143599 // Seychelles 254 AppleStoreSLE AppleStoreCountry = 143600 // Sierra Leone 255 AppleStoreSLB AppleStoreCountry = 143601 // Solomon Islands 256 AppleStoreSWZ AppleStoreCountry = 143602 // Swaziland 257 AppleStoreTJK AppleStoreCountry = 143603 // Tajikistan 258 AppleStoreTKM AppleStoreCountry = 143604 // Turkmenistan'AppleStore 259 AppleStoreZWE AppleStoreCountry = 143605 // Zimbabwe 260 ) 261 262 // iTunes Genre category, genre and subgenre 263 // https://affiliate.itunes.apple.com/resources/documentation/genre-mapping/ 264 // https://itunes.apple.com/WebObjects/MZStoreServices.woa/ws/genres 265 type GenreID int 266 267 // ID3v1 Genre id 268 type GenreCode byte