Museria - нигаҳдории мусиқии ғайримарказӣ

Museria - нигаҳдории мусиқии ғайримарказӣ

Як рӯз ман тасмим гирифтам, ки ариза нависам, то барои худ мусиқӣ интихоб кунам ва онро дар хона/кӯча/машқ ва ғайра гӯш кунам. Ва то ин ки ҳамаи ин дар як ҷараён бо иштироки ҳадди ақали ман кор кунад. Ман як меъморӣ пайдо кардам, як прототипро кашидам ва дар ниҳоят ба як "мушкилоти хурд" дучор шудам.

Ва маълум нест, ки худи файлҳои сурудро аз куҷо дастрас кардан мумкин аст. То ин вақт, ВКонтакте аллакай api-ро баста буд, дар порталҳои бузурги мусиқӣ ҳама чиз хомӯш карда шуд, ҳатто сурудҳо пора-пора дода мешуданд, то таҳлил нашаванд. Танҳо сайтҳои инфиродӣ бо як тонна таблиғ ва ҳама гуна партовҳо, ҳама гуна барномаҳои граббери шубҳанок ва дигар вариантҳои "ифлос" боқӣ монданд. Умуман, як ҳалли воқеан хуб нест. Шумо метавонед, албатта, обуна ба баъзе мусиқии Yandex ё монанди инҳо харед. Аммо боз ҳам, дар ҳеҷ ҷо API кушодаи ҷамъиятӣ вуҷуд надорад ва шумо ба таври барномавӣ ба мусиқӣ дастрасӣ надоред. Якчанд ширкатҳои бузург дастрасии дигаронро ба мусиқӣ маҳдуд кардаанд. Чаро ин умуман рӯй дод? Агар амиқтар кофта шавад, маълум шуд, ки мушкили асосӣ ҳуқуқи муаллиф аст. Ҳалли ҷорӣ дар шакли обуна ба бисёре аз муаллифони мусиқии тиҷоратӣ ва ҳамон ширкатҳо мувофиқ аст. Дар баробари ин, мусиқии ғайритиҷоратӣ ва нимтиҷоратӣ низ ба рӯйхати умумӣ дохил мешавад. Шумо ё барои ҳама чиз пардохт мекунед ё ба ҳеҷ чиз гӯш намедиҳед.

Ва ман фикр кардам, ки бо ин ҳама чӣ кор кунам. Пахнкунии бепули мусикиро чй тавр ташкил карда метавонем? Агар ман худам мусиқӣ эҷод мекардам ва аз он пул кор кардан мехостам, чӣ кор мекардам? Оё ман мехоҳам, ки сурудҳои ман пират бошанд? Ба ҳар ҳол кадом ҳалли алтернативӣ вуҷуд дорад?

Дар натиҷа, ду мушкилоти асосӣ вуҷуд доранд, ки бояд ҳал карда шаванд:

  • Ташкили паҳнкунии ройгони мусиқӣ бо истифода аз усулҳои барои аксари одамон мувофиқ, аз ҷумла нармафзор.
  • Пешниҳоди алтернативаҳо барои эҷодкорони мусиқӣ барои пул кор кардан

Захираи мусиқии ғайримарказии ҷаҳонӣ

Дар аввал ман кӯшиш мекардам, ки ҳалли мавҷударо пайдо кунам ва ҳама чизро дар асоси ин эҷод кунам. Пас аз чанд вақт ҷустуҷӯ, аввалин чизе, ки ба ман маъқул шуд ipfs. Ман ба татбиқи идеяи худ шурӯъ кардам, аммо пас аз чанде ман якчанд мушкилоти муҳимро дар ин ҳалли худ кашф кардам:

  • Ipfs - нигоҳдорӣ барои ҳама ва ҳама. Тасвирҳо, мусиқӣ ва видеоҳо ва ҳама чизест, ки шумо мехоҳед. Умуман, чунин як «партов»-и бузурги сайёра. Аз ин рӯ, вақте ки шумо гиреҳи худро оғоз мекунед, шумо фавран бори бузург мегиред. Мошин танҳо аз дард чарх мезанад.
  • Як навъ механизми чамъоварии «хошок»-и нотамом. Ман намедонам, ки ҳоло чӣ гуна аст, аммо дар он лаҳза, агар шумо дар конфигуратсия навишта бошед, ки шумо мехоҳед захираро бо даҳ гигабайт маълумот маҳдуд кунед, пас ин ҳеҷ маъно надошт. Нигоҳдорӣ зиёд шуда, бисёр параметрҳои конфигуратсияро нодида гирифт. Дар натиҷа, лозим буд, ки захираи бузурги диски сахт дошта бошед, то он даме, ки ipfs фаҳмид, ки чӣ тавр аз нав барқарор кардани нолозим.
  • Ҳангоми истифодаи китобхона (ман намедонам, ки ҳоло он чӣ гуна аст), муштарӣ мӯҳлатҳои вақтро иҷро накардааст. Шумо барои гирифтани файл дархост мефиристед ва агар он мавҷуд набошад, шумо танҳо овезон мешавед. Албатта, одамон ҳама гуна роҳҳои ҳалли мушкилотро пайдо карданд, ки қисман мушкилотро ҳал карданд, аммо ин асобагон буданд. Ин чизҳо бояд аз қуттӣ берун оянд.

Хануз бисьёр проблемахои майда-чуйда буданд ва таассурот равшан буд: инро барои лоиха истифода бурдан мумкин нест. Ман ҷустуҷӯи як анборро идома додам, имконоти гуногунро омӯхтам, аммо ҳеҷ гоҳ чизи мувофиқро наёфтам.

Дар ниҳоят, ман қарор додам, ки кӯшиш кардан лозим аст, ки худам як анбори ғайримарказӣ нависам. Вай худро байнисайёравй вонамуд накунад хам, вазифаи конкретиро хал мекунад.

Ва хамин тавр маълум шуд паҳншаванда, нигоҳдорӣ, метастокла, музерия, museria-глобалӣ.

паҳншаванда - ин қабати асосӣ ва пасттаринест, ки ба шумо имкон медиҳад гиреҳҳоро дар шабака муттаҳид кунед. Он алгоритмеро дар бар мегирад, ки ман то кунун қисман дар асоси тақрибан 10000 XNUMX сервер иҷро кардам. Татбиқи версияи пурраи алгоритм хеле мушкилтар аст ва чанд моҳи иловагӣ талаб мекунад (шояд бештар).

Ман дар ин мақола паҳншавандаро ба таври муфассал тавсиф намекунам; беҳтар аст, ки рӯзе алоҳида нависем. Дар ин ҷо ман танҳо баъзе хусусиятҳоро қайд мекунам:

  • Тавассути http/https кор мекунад.
  • Шумо метавонед барои як вазифаи мушаххас як шабакаи алоҳида эҷод кунед, ки сарбории ҳар як лоиҳаи инфиродӣ нисбат ба он ки ҳама дар як шабака буданд, ба таври назаррас коҳиш медиҳад.
  • Механизми бо танаффусҳо ва дигар чизҳои хурд дар аввал фикр карда шуд. Ва ин барои ҳама усулҳо ҳам дар муштарӣ ва ҳам дар гиреҳ кор мекунад. Шумо метавонед танзимотро аз барномаи худ чандир идора кунед.
  • Китобхона дар nodejs навишта шудааст. Масъалаҳои иҷрои стек бо табиати ғайримарказии он ҷуброн карда мешаванд. Борро бо рохи зиёд кардани шумораи гиреххо «пахн кардан» мумкин аст. Баръакс, бартариҳои зиёд мавҷуданд: ҷомеаи азим, соддагӣ ва осонии истифода, муштарии изоморфӣ, вобастагии беруна ва ғайра.

нигоҳдорӣ қабатест, ки аз паҳншаванда мерос гирифта шудааст, ки ба шумо имкон медиҳад файлҳоро дар шабака нигоҳ доред. Ҳар як файл хэши худро дорад, ки онро баъдтар бозпас гирифтан мумкин аст. Файлҳо ба блокҳо тақсим нашудаанд, балки пурра нигоҳ дошта мешаванд.

метастокла - қабате, ки аз паҳншаванда мерос гирифта шудааст, ки ба шумо имкон медиҳад маълумотро дар шабака нигоҳ доред, аммо на файлҳо. Интерфейс ба пойгоҳи додаҳои Nosql монанд аст. Шумо метавонед, масалан, файлро ба storacle илова кунед, хэши онро гиред ва онро бо истинод ба чизе ба метастокл нависед.

музерия - аз storacle ва metastocle ба мерос гирифта мешавад. Ин қабат барои нигоҳ доштани мусиқӣ бевосита масъул аст. Нигоҳдорӣ танҳо бо файлҳои mp3 ва барчаспҳои id3 кор мекунад.

Ҳамчун «калид»-и суруд номи пурраи он дар шакл истифода мешавад Рассом (TPE1) - Унвон (TIT2). Масалан:

  • Brimstone - Бор
  • Hi-rez - Lost My Way (feat. Эмилио Рохас, Дани Девинчи)

Шумо метавонед ба қадри имкон муфассалтар фаҳмед, ки чӣ гуна унвонҳои суруд ташкил мешаванд. дар ин ҷо. Шумо бояд ба функсия нигаред utils.beautifySongTitle().

Фоизи мувофиқатҳое, ки дар танзимоти гиреҳ муайян шудаанд, мувофиқат ҳисобида мешаванд. Масалан, арзиши 0.85 маънои онро дорад, ки агар функсияи муқоисаи калидӣ (номҳои суруд) бештар аз 85% шабоҳат пайдо кунад, он ҳамон суруд аст.

Алгоритми муайян кардани шабоҳат дар функсия мавҷуд аст utils.getSongSimilarity().

Сарпӯши сурудро барои гирифтани дертар тавассути тегҳо низ замима кардан мумкин аст (АПИК). Утилитаҳо дорои тамоми усулҳои зарурии қабул ва коркарди тегҳо мебошанд.

Намунаи кор бо нигаҳдорӣ тавассути муштариро метавон дар readme.

Ҳамаи қабатҳои дар боло номбаршуда мустақиланд ва метавонанд дар алоҳидагӣ ҳамчун қабатҳои поёнӣ барои лоиҳаҳои дигар истифода шаванд. Масалан, аллакай идеяи сохтани қабат барои нигоҳ доштани китобҳо вуҷуд дорад.

museria-глобалӣ як анбори аллакай танзимшудаи git барои оғоз кардани гиреҳи худ дар шабакаи ҷаҳонии мусиқӣ мебошад. Клонкунӣ npm i && npm оғоз кунед ва ин асосан аст. Шумо метавонед онро ба таври муфассал танзим кунед, онро дар Docker иҷро кунед ва ғайра. Маълумоти муфассал дар ин ҷо дастрас аст github.

Вақте ки анбор навсозӣ мешавад, шумо бояд гиреҳи худро навсозӣ кунед. Агар рақами версияи асосӣ ё хурд тағйир ёбад, ин амал ҳатмист, вагарна гиреҳҳои кӯҳна аз ҷониби шабака сарфи назар карда мешаванд.

Шумо метавонед бо сурудҳо дастӣ ва барномавӣ кор кунед. Ҳар як гиреҳ серверро барои вазифаҳои гуногун иҷро мекунад. Аз ҷумла, вақте ки шумо ба нуқтаи пешфарз ташриф меоред, шумо интерфейси кор бо мусиқӣ мегиред. Масалан, шумо метавонед ба гиреҳи реша (пайванд метавонад дертар мувофиқ набошад, гиреҳҳои воридотӣ низ метавонанд дар телеграмма, ё навсозиҳоро дар Github ҷустуҷӯ кунед).

Бо ин роҳ шумо метавонед сурудҳоро ба анбор ҷустуҷӯ ва бор кунед. Боркунии сурудҳо метавонад дар ду режим сурат гирад: муқаррарӣ ва модератор. Усули дуюм маънои онро дорад, ки кор аз ҷониби шахс иҷро карда мешавад, на барнома. Ва агар шумо ҳангоми илова кардан ин қуттиро қайд кунед, шумо бояд captcha-ро ҳал кунед. Сурудҳоро бо афзалиятҳои -1, 0 ё 1 илова кардан мумкин аст. Афзалияти 1-ро танҳо дар ҳолати модератор танзим кардан мумкин аст. Афзалиятҳо лозиманд, то нигоҳдорӣ самараноктар қарор диҳад, ки ҳангоми кӯшиши иваз кардани суруди мавҷуда бо суруди нав чӣ кор кардан лозим аст. Чӣ қадаре ки авлавият баландтар бошад, ҳамон қадар эҳтимолияти баргардонидани файли мавҷуда зиёдтар аст. Ин ба мубориза бо спам кӯмак мекунад ва сифати сурудҳои зеркашишударо баланд мекунад.

Агар шумо илова кардани сурудҳоро ба анбори худ оғоз кунед, кӯшиш кунед, ки тасвирҳоро (муқоваро) замима кунед, гарчанде ки ин майдон талаб карда намешавад. Дар 99% ҳолатҳо, тасвирҳои аввалин дар Google дар асоси унвонҳои суруд муқоваҳои албом мебошанд.

Чӣ тавр илова кардани файлҳо аз ҷиҳати техникӣ, ба таври мухтасар:

  • Мизоҷ суроғаи гиреҳи озодро мегирад, ки муддате ҳамоҳангсоз мешавад.
  • Функсияи илова кардани суруд оғоз мешавад (аз ҷониби шахс ё код) ва дархост барои илова кардани ҳамоҳангсоз ба нуқтаи ниҳоӣ дода мешавад.
  • Ҳамоҳангсоз ҳисоб мекунад, ки чанд нусха бояд захира карда шавад (параметри танзимшаванда).
  • Гиреҳҳои мувофиқтарин барои сарфа ҷустуҷӯ карда мешаванд.
  • Файл бевосита ба ин гиреҳҳо меравад.

Чӣ тавр файлҳо аз ҷиҳати техникӣ қабул карда мешаванд:

  • Мизоҷ суроғаи гиреҳи озодро мегирад, ки муддате ҳамоҳангсоз мешавад.
  • Функсияи қабули суруд (аз ҷониби шахс ё рамз) ба кор андохта мешавад ва дархост барои қабули он дар нуқтаи ниҳоии ҳамоҳангсоз дода мешавад.
  • Ҳамоҳангсоз мавҷудияти пайвандро дар кэш тафтиш мекунад. Агар мавҷуд бошад ва он кор кунад, он фавран ба муштарӣ баргардонида мешавад, вагарна гиреҳҳо барои мавҷудият пурсиш карда мешаванд.
  • Файл аз истинод гирифта мешавад, агар яке аз онҳо пайдо шавад.

Алтернативаҳо барои эҷодкорони мусиқӣ

Маро хамеша чунин савол ба худ чалб мекард, ки ба кадру кимати бисьёр асархои эчодй чй тавр объективона бахо додан мумкин аст? Барои чӣ, масалан, як шахс албоми мусиқии худро барои 10 доллар пешниҳод мекунад? Ё барои $ 20 ё $ 100. Алгоритм куҷост? Вақте ки масалан, мо дар бораи ягон маҳсулоти ҷисмонӣ ва ё ҳатто бисёр намудҳои хизматрасонӣ сухан меронем, мо метавонем ҳадди аққал хароҷотро ҳисоб кунем ва аз он кор кунем.

Хуб, биёед бигӯем, ки мо $ 10 шартгузорӣ мекунем. Оё ин хеле самаранок аст? Фарз мекунем, ки ман дар ҷое албом ё суруде аз онҷо гӯш кардам ва тасмим гирифтам, ки сипосгузорам. Аммо аз рӯи эҳсосот ва имкониятҳои ман, 3 доллар шифти ман аст. Пас, мо бояд чӣ кор кунем? Эҳтимол, ман мисли аксари одамон чизе намекунам.

Бо муқаррар кардани як намуди нархи устувор барои кори эҷодӣ, шумо танҳо худро маҳдуд мекунед ва аз шумораи зиёди одамон ба шумо пули камтар фиристоданро пешгирӣ мекунед, ки дар маҷмӯъ назар ба онҳое, ки бо нархи муқарраркардаи шумо мехаранд, таъсирбахштар аст. Ба назари ман, эҷодкорӣ маҳз соҳаест, ки дар он хайрияҳо бояд аввал ҳукмронӣ кунанд. Барои ин ба шумо лозим аст:

  • Ба одамон шукргузорӣ карданро бо ин роҳ таълим диҳед. Худи эҷодкорон бояд ба таври возеҳ нишон диҳанд, ки онҳо мехоҳанд хайрия гиранд, истинодҳоро ба усулҳои гуногуни пардохт дар ҳама ҷо илова кунанд ва ғайра.
  • Барои содда ва мустахкам намудани ин процессхо механизмхои бештар лозиманд. Масалан, як намуди вебсайти умумиҷаҳонӣ эҷод кунед, ки дар он шумо метавонед бо истифода аз истинодҳои ҳуқуқи муаллиф барои эҷодкорӣ хайрия кунед.

    Биёед бигӯем, ки пайванд чунин аст:

    http://someartistsdonationsite.site/category/artist?external-info

    Агар мо онро ба навозандагон маҳдуд кунем, пас:

    http://someartistsdonationsite.com/music/miyagi?song=blabla

    Иҷрокунанда бояд лақаби худро тасдиқ кунад ва ба он замима кунад.

    Мо функсияеро барои тавлиди чунин истинод ба муштарии museria илова мекунем ва ҳамаи лоиҳаҳое, ки аз анбор истифода мебаранд, метавонанд тугмаҳои хайрияро бо ин истинодҳо дар паҳлӯи сурудҳо дар вебсайтҳо/барномаҳои худ ҷойгир кунанд. Истифодабарандагон имконият доранд, ки хеле зуд ва осон хайрия кунанд. Табиист, ки ин равишро дар ҳама гуна лоиҳа ва категорияи эҷодкорӣ истифода бурдан мумкин аст, на танҳо тавассути нигоҳдорӣ.

Чаро маҳз ба шумо як дастгоҳи нигаҳдории мусиқӣ лозим аст ва чӣ тавр шумо дар он иштирок карда метавонед?

  • Агар шумо дар лоиҳаи марбут ба мусиқӣ кор карда истода бошед ё нақшаи эҷод кардани онро дошта бошед, пас ҳама чиз барои он пешбинӣ шудааст. Шумо метавонед мусиқиро барои нигоҳдорӣ ва дарёфти сурудҳо истифода баред ва ҷараёни сурудҳои онлайнро афзоиш диҳед. Агар, дар айни замон, шумо қобилияти баланд бардоштани ҳадди аққал як гиреҳи шахсии худро дошта бошед, пас ин беҳтарин саҳм дар рушди шабака хоҳад буд.
  • Эҳтимол, шумо омодаед, ки ягон нақши дигарро ба ӯҳда гиред: дар код кӯмак кунед, ё маълумотро пур кунед ва модератор кунед, маълумотро дар бораи лоиҳа ба дӯстони худ паҳн кунед ва ғайра.
  • Шояд ба шумо ин идея писанд омад ва омодаед, ки аз ҷиҳати молиявӣ кӯмак кунед, то он ҳама зиндагӣ ва инкишоф ёбад. Чӣ қадаре ки гиреҳ зиёд бошад, ҳамон қадар сурудҳо зиёданд.
  • Ё шумо танҳо лозим аст, ки дар ягон лаҳза сурудеро пайдо кунед ва зеркашӣ кунед. Шумо метавонед ин корро хеле содда, масалан, тавассути боти телеграмма.

Лоиҳа ҳоло дар марҳилаи ибтидоӣ қарор дорад. Шабакаи санҷишӣ ба кор андохта шуд, гиреҳҳо метавонанд зуд-зуд бозоғоз шаванд, навсозӣ талаб кунанд ва ғайра. Агар дар давраи баҳодиҳӣ ягон мушкилоти ҷиддӣ вуҷуд надошта бошад, ҳамон шабака ба шабакаи асосӣ табдил дода мешавад.

Шумо метавонед маълумотро дар бораи гиреҳ аз берун бубинед: шумораи сурудҳо, фазои холӣ ва ғайра, бо истифода аз истиноди монанди http://node-address/status ё http://node-address/status?pretty

Алоқаҳои ман:

Манбаъ: will.com

Илова Эзоҳ