Yave nguva yekutsiva GIF neAV1 vhidhiyo

Yave nguva yekutsiva GIF neAV1 vhidhiyo

Ndi2019 uye yave nguva yekuti takasarudza maGIF (aiwa, hatisi kutaura nezvesarudzo iyi! Hatife takabvumirana pano! - pano tiri kutaura nezve mataurirwo muChirungu, kwatiri izvi hazvina basa - approx. shanduro) MaGIF anotora nzvimbo yakakura (kazhinji megabytes akati wandei!), Iyo, kana iwe uri mugadziri wewebhu, inopesana zvachose nezvido zvako! Semugadziri wewebhu, iwe unoda kudzikisa zvinhu izvo vashandisi vanoda kurodha kuitira kuti saiti itakure nekukurumidza. Nechikonzero chimwe chete, iwe unoderedza JavaScript, optimize PNG, JPEG, uye dzimwe nguva shandura JPEG kuenda kuWebP. Asi chii chekuita neGIF yekare?

Hatidi maGIF kwatiri kuenda!

Kana chinangwa chako chiri chekuvandudza saiti yekurodha kumhanya, saka iwe unofanirwa kubvisa maGIF! Asi zvino unoita sei mifananidzo ine animated? Mhinduro ivhidhiyo. Uye kazhinji, iwe uchawana zvirinani mhando uye nzvimbo yekuchengetedza ye50-90%! Muhupenyu zvinhu zvizhinji zvine zvazvakanakira nezvazvakaipira. Paunotsiva GIF nevhidhiyo, kazhinji haugone kuwana chero huipi.

Pasi nemaGIF ese!

Sezvineiwo, kutsiva maGIF nemavhidhiyo kwave kuitika mumakore achangopfuura, saka ese maturusi anodiwa atove kushandiswa. Mune ino post, ini handisi kuzodzosera vhiri, asi ndinongovandudza zvishoma mhinduro dziripo. Saka heino pfungwa:

  1. Tora GIF woishandura kuita vhidhiyo
  2. Encode vhidhiyo uchishandisa H.264 kana VP9, ​​i.e. compress iyo uye kurongedza muMP4 kana WebM mudziyo
  3. Tsiva <img> ine animated GIF pa <video> ne roller
  4. Batidza otomatiki isina ruzha uye loop yeGIF maitiro

Google ine zvinyorwa zvakanaka zvinotsanangura maitiro.

Igore ra2019

Ndi2019 izvozvi. Budiriro inofambira mberi, uye tinofanira kufambirana nayo. Parizvino tave nesarudzo mbiri dzecodec dzinotsigirwa zvakanyanya mukati mese mabhurawuza uye vhidhiyo encoding maturusi:

  1. H.264 - yakaunzwa muna 2003 uye inonyanya kushandiswa nhasi
  2. VP9 - yakaonekwa muna 2013 uye yakawana kuvandudzwa kwekumanikidza kweinenge 50% zvichienzaniswa neH.264, kunyange zvazvo sezvavanonyora pano hazvisi zvese hazvisi nguva dzose dzakanaka

Cherechedza: Kunyangwe H.265 iriyo inotevera vhezheni yeH.264 uye inokwanisa kukwikwidza neVP9, handisi kuiona nekuda kwekushata kwerutsigiro rwebrowser, sezvakaratidzwa papeji. https://caniuse.com/#feat=hevc. Mari yerezinesi ndicho chikonzero chikuru nei H.265 isina kupararira seH.264 uye nei Alliance yeOpen Media consortium iri kushanda nekodheki isina humambo, AV1.

Rangarira, chinangwa chedu ndechekudzikisira maGIF akakura kusvika padiki diki saizi kuti ikurumidze kurodha nguva. Zvingave zvisinganzwisisike 2019 dai tisina mwero mutsva wekumanikidza vhidhiyo mune yedu arsenal. Asi iripo uye inonzi AV1. NeAV1 unogona zadzisa ingangoita 30% kuvandudzwa mukutsikirira zvichienzaniswa neVP9. Lepota! 🙂

AV1 iri pabasa rako kubvira 2019!

Pamatafura

Munguva pfupi yapfuura tsigiro yeAV1 vhidhiyo decoding yakawedzerwa kune desktop shanduro Google Chrome 70 и Mozilla Firefox 65. Parizvino Firefox rutsigiro ibuggy uye inogona kukonzera kubondera, asi zvinhu zvinofanirwa kuvandudzwa nekuwedzera kwe dav1d decoder yatova muFirefox 67 (yakatoburitswa, asi rutsigiro rwaonekwa - approx. transl.). Kuti uwane ruzivo nezve shanduro itsva verenga - dav1d 0.3.0 kuburitswa: nekukurumidza!

Pamafoni emafoni

Parizvino hapana tsigiro yehardware yemafoni efoni nekuda kwekushaikwa kwemadhikodha akakodzera. Iwe unogona kuita software decoding, kunyangwe izvi zvichizotungamira kuwedzera kushandiswa kwebhatiri. Yekutanga mobile SOCs inotsigira AV1 hardware decoding ichaonekwa muna 2020.

Uyezve vaverengi vechinyorwa vakaita senge, "saka kana nharembozha dzisati dzazvitsigira nemazvo, sei uchishandisa AV1?"

AV1 ndeye codec nyowani, uye isu tiri pakutanga kwekugadzirisa kwayo. Funga nezvechinyorwa ichi se "paunenge uchibika, boka rinotevera" danho. Desktop tsigiro pachayo ichamhanyisa nzvimbo dzevamwe vateereri. Uye macodecs ekare anogona kushandiswa seanodzokera kumashure kana AV1 isingatsigirwe pane chinongedzo. Asi sevashandisi vanochinjira kumidziyo ine AV1 rutsigiro, zvese zvinenge zvagadzirira. Kuti tiite izvi, isu tinofanirwa kugadzira tag yevhidhiyo sezvakaratidzwa pazasi, izvo zvinozobvumira browser kusarudza yainoda fomati - AV1 - >> VP9 - >> H.264. Zvakanaka, kana mushandisi aine mudziyo wakare kana mufambisi asingatsigire vhidhiyo zvachose (izvo zvisingaite zvakanyanya neH264), ipapo achangoona GIF

<video style="display:block; margin: 0 auto;" autoplay loop muted playsinline poster="RollingCredits.jpg">
  <source src="media/RollingCredits.av1.mp4" type="video/mp4">
  <source src="media/RollingCredits.vp9.webm" type="video/webm">
  <source src="media/RollingCredits.x264.mp4" type="video/mp4">
  <img src="media/RollingCredits.gif">
</video>

Kugadzirwa kweAV1

Kugadzira mavhidhiyo muAV1 zviri nyore. Dhawunirodha yazvino ffmpeg kuvaka kune yako system kubva pano uye shandisa mirairo iri pasi apa. Isu tinoshandisa 2 kupfuura kuti tiwane tarisiro bitrate. Kuti tiite izvi tichamhanya ffmpeg kaviri. Nguva yokutanga yatinonyora chigumisiro kune faira isiripo. Izvi zvinogadzira irogi rinozodikanwa kune yechipiri kumhanya kweffmpeg.

# Linux or Mac
## Проход 1
ffmpeg -i input.mp4 -c:v libaom-av1 -b:v 200k -filter:v scale=720:-1 -strict experimental -cpu-used 1 -tile-columns 2 -row-mt 1 -threads 8 -pass 1 -f mp4 /dev/null && 
## Проход 2
ffmpeg -i input.mp4 -pix_fmt yuv420p -movflags faststart -c:v libaom-av1 -b:v 200k -filter:v scale=720:-1 -strict experimental -cpu-used 1 -tile-columns 2 -row-mt 1 -threads 8 -pass 2 output.mp4

# Windows
## Проход 1
ffmpeg.exe -i input.mp4 -c:v libaom-av1 -b:v 200k -filter:v scale=720:-1 -strict experimental -cpu-used 1 -tile-columns 2 -row-mt 1 -threads 8 -pass 1 -f mp4 NUL && ^
## Проход 2
ffmpeg.exe -i input.mp4 -pix_fmt yuv420p -movflags faststart -c:v libaom-av1 -b:v 200k -filter:v scale=720:-1 -strict experimental -cpu-used 1 -tile-columns 2 -row-mt 1 -threads 8 -pass 2 output.mp4

Heino kupatsanurwa kwema parameters:

-i - Входной файл.

-pix_fmt - Используем формат 4:2:0 для выбора информации о цветности в видео. Существует много других возможных форматов, но 4:2:0 наиболее совместимый.

-c:v - Какой кодек использовать, в нашем случае - AV1.<br />
-b:v – Средний битрейт, которого мы хотим добиться.

-filter:v scale - Фильтр масштаба ffmpeg используется для уменьшения разрешения видео. Мы устанавливаем X:-1 что говорит ffmpeg уменьшить ширину до X, сохранив соотношение сторон.

-strict experimental - Надо указать, т.к. AV1 достаточно новый кодек.

-cpu-used - Ужасно названный параметр, который на самом деле используется для выбора уровня качества видео. Возможные значения 0-4. Чем меньше значение, тем лучше качество и, соответственно, больше время, которое займёт кодировка.

-tile-columns - Для использования нескольких тредов. Говорит AV1 разбить видео на отдельные колонки, которые могут быть перекодированы независимо для лучшей утилизации ЦПУ.

-row-mt – Тоже, что и предыдущий параметр, но разбивает так же на строки внутри колонок.

-threads - Количество тредов.

-pass - Какой проход сейчас выполняется.

-f - Используется только при первом проходе. Указывает формат выходного файла, т.е. MP4 в нашем случае.

-movflags faststart - Включаем быстрый старт видео, перемещая часть данных в начало файла. Это позволит начать воспроизведение ещё до полной загрузка файла.

Kugadzira maGIF

Kugadzira iyo GIF ndakashandisa iri pazasi kuraira. Kuti ndideredze saizi, ndakayera iyo GIF kusvika 720px yakafara uye gumi nemaviri fps pane yepakutanga 12 fps vhidhiyo.

./ffmpeg -i /mnt/c/Users/kasing/Desktop/ToS.mov -ss 00:08:08 -t 12
-filter_complex "[0:v] fps=12,scale=720:-1" -y scene2.gif

Mhedzisiro yeYedzo

Zviri nani kuona kamwe pane kuverenga zana, handiti? Ngativei nechokwadi chekuti AV1 ndiyo sarudzo yakanaka yezvinangwa zvedu. Ndakatora vhidhiyo yemahara yeTears Of Steel inowanikwa pano https://mango.blender.org/, ndokuishandura vachishandisa inoda kuenzana ne bitrate yeAV1, VP9, ​​H.264 codecs. Mhedzisiro iri pazasi kuti iwe ugone kuzvienzanisa iwe pachako.

Cherechedzo 1: Kana iyo faira iri pazasi isingakuisire iwe, ingave nguva yekuvandudza browser yako. Ini ndingakurudzira Chromium yakavakirwa browser yakadai seChrome, Vivaldi, Brave kana Opera. Heino ruzivo rwazvino nezve AV1 rutsigiro https://caniuse.com/#feat=av1

Cherechedzo 2: YeFirefox 66 paLinux iwe uchafanirwa kuseta mureza media.av1.enabled muchirevo true в about:config

Cherechedzo 3: Ndafunga kusabatanidza maGIF pazasi nekuda kwehukuru hwavo uye huwandu hwe data hwaizoda kurodha peji ino! (Zvinogona kunge zvisinganzwisisike, sezvo peji ino iri yekudzikisa huwandu hwe data pane peji :)). Asi iwe unogona kuona ekupedzisira maGIF pano https://github.com/singhkays/its-time-replace-gifs-with-av1-video/blob/master/GIFs

Chiziviso chemushanduri: Habr haikubvumidze kugonesa autoplay uye loop iyo faira, saka iwe unogona chete kuongorora mhando. Iwe unogona kuona kuti "mifananidzo ine animated" inotaridzika sei pairi chinyorwa chekutanga.

Chiitiko 1 @ 200 Kbps

Pane kufamba kwakawanda pano, iyo inonyanya kunzwisiswa pane yakaderera bitrates. Unokwanisa kuona nekukasika kuipa kwakaita H.264 pa bitrate iyi; masikweya anobva angooneka. VP9 inovandudza mamiriro acho zvishoma, asi masikweya achiri kuoneka. AV1 inohwina zvakajeka, ichigadzira mufananidzo uri nani.

H.264

VP9

AV1

Chiitiko 2 @ 200 Kbps

Pane zvakawanda translucent CGI zvemukati pano. Mhedzisiro yacho haina kusiyana senguva yekupedzisira, asi zvakazara iyo AV1 inotaridzika zvirinani.

H.264

VP9

AV1

Chiitiko 3 @ 100 Kbps

Muchiitiko ichi, tinoshandura bitrate pasi kusvika ku100 Kbps uye migumisiro inowirirana. AV1 inochengetedza hutungamiriri hwayo kunyangwe pakaderera bitrates!

H.264

VP9

AV1

Cherry pakiki

Kupedzisa chinyorwa ichi nekunzwa huwandu hwebandwidth yakachengetedzwa kana ichienzaniswa neGIF - saizi yese yemavhidhiyo yakakwira ... 1.62 MB!! Rudyi. Vamwe vanopenga 1,708,032 bytes! Kuenzanisa, heino maGIF uye AV1 mavhidhiyo saizi yechiitiko chega chega

GIF
AV1

Chiitiko 1
11.7 MB
0.33 MB

Chiitiko 2
7.27 MB
0.18 MB

Chiitiko 3
5.62 MB
0.088 MB

Zvinongoshamisa! Handizvo here?

Cherechedza: Iwo masaizi efaira eVP9 neH264 haana kupihwa, sezvo asina kumbosiyana neAV1 nekuda kwekushandiswa kweiyo bitrate. Zvingave zvisingaite kuwedzera mamwe makoramu maviri ane saizi yakafanana, kungoratidza kuti aya macodec anoburitsa zvirinani mhando pane GIF pamafaira madiki.

Source: www.habr.com

Voeg