Lemmy Lemmy 11 грудня 2023, 11:29

Завершено сервіс для роботи з ресурсами

Зро­бив API для сер­ві­са оброб­ки ресур­сів (меді­а­кон­тен­та).

Це най­ча­сті­ше вико­ри­сто­ву­є­мий API, який займа­є­ться оброб­кою зобра­жень, відео, аудіо, посилань.

Він вирі­шує про­бле­му при­ве­де­н­ня фай­лів до одно­го фор­ма­та (webp, mp4, mp3), опти­мі­за­ції роз­мі­ра. Також сер­віс уні­фі­кує інтер­фейс дода­ва­н­ня фай­лів та поси­лань в пост.

Додав обме­же­н­ня – роз­мір фай­ла до 35 мб, навіть якщо файл роз­та­шо­ва­но на зов­ні­шньо­му сервері.

При­клад: відео зна­хо­ди­ться на зов­ні­шньо­му сер­ве­рі, ви встав­ля­є­те URL на це відео в пост, пере­ві­ря­є­ться роз­мір фай­ла, якщо він не впи­су­є­ться в ліміт, то відео буде від­обра­же­но як поси­ла­н­ня, яке від­кри­є­ться в новій вклад­ці, замість від­кри­т­тя в плеєрі.

Це необ­хі­дно, щоб мати перед­ба­чу­ва­ні часо­ві рам­ки оброб­ки медіа фай­ла. Тому що, якщо відео буде заве­ли­ким, то сер­вер не змо­же його швид­ко обро­би­ти, тим самим запит під­ви­сне, та буде пере­ви­тра­та про­це­сор­но­го часу. Тому обро­блю­є­ться все що має неве­ли­кий роз­мір, в інших випад­ках це буде про­сто поси­ла­н­ня на зов­ні­шній файл.

Кому ціка­во, можно поди­ви­ти­ся API доку­мен­та­цію до цьо­го сервіса:

documenter.getpostman.com Сервіс ресурсів — UJournal documenter.getpostman.com
  • 2
  • 11
  • 217

11 коментарів

  • HimarsTime HimarsTime 2 роки тому

    І було б непо­га­но, якби поси­ла­н­ня на вели­кі відео все ж мали якусь візу­аль­ну оброб­ку, і на сай­ті від­обра­жа­лись не про­сто як поси­ла­н­ня, а шось типу заблю­ре­но­го відео. Як напри­клад коли вони під­ван­та­жу­ю­ться з постом на ТГ, і там пише шо відео заве­ли­ке, тре­ба пере­йти до першоджерела.

    Чи воно так і буде відображатись?

    • 1
    • Lemmy Lemmy 2 роки тому · Автор

      @himarstime Вели­кі відео (медіа) це час на виван­та­же­н­ня фай­ла на вла­сний сер­вер, потім тре­ба його обро­би­ти ffmpeg, навіть про­сто витяг­ти один кадр з відео. Чим біль­ше відео – біль­ше часу це потре­бує. Зараз я не робив оброб­ку фай­лів через чер­ги, а роблю пря­мо при запи­ті. Тож вели­кі фай­ли поки ні, будуть про­сто зов­ні­шні посилання.

      Але пози­тив­ний момент, для відео до 35 мб я роблю скрін­шот кадру з пер­шої секун­ди та роблю блюр-маску, яку пла­ную вико­ри­сто­ву­ва­ти поки відео ще не заван­та­жи­ло­ся. Вико­ри­сто­вую https://​evanw​.github​.io/​t​h​u​m​b​hash/

      • 1
    • HimarsTime HimarsTime 2 роки тому

      @lemmy а хіба якщо відео не поча­ло оброб­ку, з ньо­го не можна ско­пі­ю­ва­ти обкла­дин­ку? Зараз напри­клад поте­стив на від­о­сах в тг (тіки там були від­о­си які не почи­на­ли авто­ма­ти­чно від­тво­рю­ва­тись), і там є можли­вість ско­пі­ю­ва­ти кар­тин­ку обкла­дин­ку. Чи на біль­шо­сті відео обкла­дин­ка це чор­ний екран?

      • 1
    • Lemmy Lemmy 2 роки тому · Автор

      @himarstime Якщо гово­ри­ти окре­мо про Теле­грам, то я тре­ба спро­бу­ва­ти витя­гу­ва­ти кар­тин­ку з відео (заблю­ре­ну), якщо така є. Я про­сто ще не дішов до цьо­го моменту.

      Я поки що в про­це­сі дороб­ки дизай­на API вставок.

      • 1
  • HimarsTime HimarsTime 2 роки тому

    При­кіл, сів роби­ти дома­шку з Постма­ном, і тут пост зі скрі­ном з постма­на. Це знак

    • 1
    • Lemmy Lemmy 2 роки тому · Автор

      @himarstime Не бачу алтер­на­тив постма­ну – кру­тий інстру­мент. А ще вміє гене­ру­ва­ти доку­мен­та­цію до API, май­же задарма.

      • 1
  • HimarsTime HimarsTime 2 роки тому

    А відео на юту­бі ж і далі будуть про­гра­ва­тись на сай­ті, чи теж кида­ти­ме на ютуб?

    • 1
    • Lemmy Lemmy 2 роки тому · Автор

      @himarstime Так, відео з юту­ба пла­ную і нада­лі роби­ти пле­є­ром. Доре­чі, про­екс­пе­ре­мен­ту­вав з ютуб-пле­є­ром є ідеє роби­ти один пле­єр для всіх відео і про­сто дина­мі­чно міня­ти йому URL при скро­лі. Є пра­цю­ю­чий про­то­тип. Буду далі тесту­ва­ти, якщо вда­сться – це дуже допо­мо­же мати швид­кі сто­рін­ки. Зараз пле­єр юту­ба нега­тив­но впли­ває на оцін­ки продуктивності.

      • 1
    • HimarsTime HimarsTime 2 роки тому

      @lemmy в мене айфон і так робить всі відео з одним пле­є­ром (ну май­же всі)

      • 1
    • Lemmy Lemmy 2 роки тому · Автор

      @himarstime Так, на айфо­нах зро­бле­но гра­мо­тно – все пра­цює через єди­ний пле­єр. Але я не впев­не­ний що якщо вста­ви­ти два відео на сто­рін­ку і про­гра­ва­ти їх не в пов­но­е­кран­но­му режи­мі, то все буде гра­ти­ся через один плеєр.

      Тоб­то інстан­сів (еле­мен­тів <video>) все одно декіль­ка. А зі встав­ка­ми з інших сай­тів все ще ускладнюється.

      Відео з юту­ба встав­ля­є­ться за допо­мо­гою фре­йма. При­пу­сти­мо, що на сто­рін­ці 5 відео – це 5 неза­ле­жних фрей­мів, 5 неза­ле­жних сто­рі­нок, яки тягнуть свої ресур­си, запу­ска­ють свої ізо­льо­ва­ні сере­до­ви­ща для вико­на­н­ня JS. Все це силь­но наван­та­жує сторінку.

      • 1
    • Lemmy Lemmy 2 роки тому · Автор

      @himarstime А ще з єди­ним пле­є­ром можно роби­ти авто­плей відео (в замью­че­но­му режи­мі). Пра­кти­чно TikTok/​COUB визодить.

      • 1