GIF ஐ AV1 வீடியோவுடன் மாற்றுவதற்கான நேரம் இது

GIF ஐ AV1 வீடியோவுடன் மாற்றுவதற்கான நேரம் இது

இது 2019, GIFகளை நாங்கள் முடிவு செய்த நேரம் இது (இல்லை, நாங்கள் இந்த முடிவைப் பற்றி பேசவில்லை! நாங்கள் இங்கே ஒப்புக்கொள்ள மாட்டோம்! - இங்கே நாம் ஆங்கிலத்தில் உச்சரிப்பு பற்றி பேசுகிறோம், எங்களுக்கு இது பொருந்தாது - தோராயமாக. மொழிபெயர்ப்பு) GIF கள் ஒரு பெரிய அளவிலான இடத்தை எடுத்துக்கொள்கின்றன (பொதுவாக பல மெகாபைட்டுகள்!), நீங்கள் ஒரு வலை உருவாக்குபவராக இருந்தால், உங்கள் விருப்பங்களுக்கு முற்றிலும் முரணானது! வலை உருவாக்குநராக, பயனர்கள் பதிவிறக்க வேண்டிய விஷயங்களைக் குறைக்க வேண்டும், இதனால் தளம் விரைவாக ஏற்றப்படும். அதே காரணத்திற்காக, நீங்கள் JavaScript ஐ சிறிதாக்கி, PNG, JPEG ஐ மேம்படுத்தி, சில சமயங்களில் மாற்றவும் JPEG இலிருந்து WebP. ஆனால் பழைய GIF ஐ என்ன செய்வது?

நாங்கள் செல்லும் இடத்திற்கு GIFகள் தேவையில்லை!

தள ஏற்றுதல் வேகத்தை மேம்படுத்துவதே உங்கள் இலக்காக இருந்தால், நீங்கள் GIFகளை அகற்ற வேண்டும்! ஆனால் எப்படி அனிமேஷன் படங்களை உருவாக்குவது? பதில் வீடியோ. மேலும் பெரும்பாலான சந்தர்ப்பங்களில், நீங்கள் சிறந்த தரம் மற்றும் 50-90% இடத்தை சேமிப்பீர்கள்! வாழ்க்கையில், பெரும்பாலான விஷயங்கள் அவற்றின் நன்மை தீமைகளைக் கொண்டுள்ளன. GIF ஐ வீடியோவுடன் மாற்றினால், பெரும்பாலும் நீங்கள் எந்த தீமையையும் கண்டறிய முடியாது.

அனைத்து GIFகளும் இல்லை!

அதிர்ஷ்டவசமாக, GIFகளை வீடியோக்களுடன் மாற்றுவது சமீபத்திய ஆண்டுகளில் பொதுவானது, எனவே தேவையான அனைத்து கருவிகளும் ஏற்கனவே பயன்பாட்டில் உள்ளன. இந்த இடுகையில், நான் சக்கரத்தை மீண்டும் கண்டுபிடிக்க மாட்டேன், ஆனால் தற்போதுள்ள தீர்வுகளை சற்று மேம்படுத்துவேன். எனவே சாராம்சம் இங்கே:

  1. GIFஐ எடுத்து வீடியோவாக மாற்றவும்
  2. H.264 அல்லது VP9 ஐப் பயன்படுத்தி வீடியோவை குறியாக்குங்கள், அதாவது. அதை சுருக்கி MP4 அல்லது WebM கொள்கலனில் பேக் செய்யவும்
  3. மாற்றவும் <img> அனிமேஷன் செய்யப்பட்ட GIF உடன் <video> உருளையுடன்
  4. GIF விளைவுக்காக ஒலி மற்றும் லூப் இல்லாமல் தானியங்கு இயக்கத்தை இயக்கவும்

செயல்முறையை விவரிக்கும் நல்ல ஆவணங்களை Google கொண்டுள்ளது.

இது 2019

இப்போது 2019. முன்னேற்றம் முன்னோக்கி நகர்கிறது, நாம் அதைத் தொடர வேண்டும். இதுவரை எங்களிடம் இரண்டு கோடெக் விருப்பங்கள் உள்ளன, அவை எல்லா உலாவிகளிலும் வீடியோ குறியாக்க கருவிகளிலும் பரவலாக ஆதரிக்கப்படுகின்றன:

  1. H.264 - 2003 இல் அறிமுகப்படுத்தப்பட்டது மற்றும் இன்று மிகவும் பரவலாகப் பயன்படுத்தப்படுகிறது
  2. VP9 - 2013 இல் தோன்றி H.50 உடன் ஒப்பிடும்போது கிட்டத்தட்ட 264% சுருக்க மேம்பாடுகளை அடைந்தது. என அவர்கள் இங்கே எழுதுகிறார்கள் எல்லாம் எப்போதும் மிகவும் ரோஸி இல்லை

குறிப்பு: H.265 ஆனது H.264 இன் அடுத்த பதிப்பு மற்றும் VP9 உடன் போட்டியிடும் திறன் கொண்டதாக இருந்தாலும், பக்கத்தில் காட்டப்பட்டுள்ளபடி, மோசமான உலாவி ஆதரவு காரணமாக நான் அதைக் கருத்தில் கொள்ளவில்லை. https://caniuse.com/#feat=hevc. H.265 ஆனது H.264ஐப் போன்று பரவலாக மாறாததற்கும், Alliance of Open Media consortium ஆனது ராயல்டி இல்லாத கோடெக்கான AV1 உடன் பணிபுரிவதற்கும் உரிமச் செலவுகள் முக்கியக் காரணம்.

லோடிங் நேரத்தை விரைவுபடுத்த பெரிய GIFகளை முடிந்த அளவு சிறிய அளவில் சுருக்குவதே எங்கள் குறிக்கோள் என்பதை நினைவில் கொள்ளவும். எங்கள் ஆயுதக் களஞ்சியத்தில் வீடியோ சுருக்கத்திற்கான புதிய தரநிலை இல்லை என்றால், அது ஒரு விசித்திரமான 2019 ஆக இருக்கும். ஆனால் அது உள்ளது மற்றும் AV1 என்று அழைக்கப்படுகிறது. AV1 மூலம் உங்களால் முடியும் VP30 உடன் ஒப்பிடும்போது சுருக்கத்தில் சுமார் 9% முன்னேற்றத்தை அடையலாம். லெபோடா! 🙂

AV1 2019 முதல் உங்கள் சேவையில் உள்ளது!

டெஸ்க்டாப்களில்

சமீபத்தில் AV1 வீடியோ டிகோடிங்கிற்கான ஆதரவு டெஸ்க்டாப் பதிப்புகளில் சேர்க்கப்பட்டது Google Chrome 70 и மொஸில்லா ஃபயர்ஃபாக்ஸ் 65. இப்போது பயர்பாக்ஸ் ஆதரவு தரமற்றது மற்றும் செயலிழப்புகளை ஏற்படுத்தலாம், ஆனால் அதைச் சேர்ப்பதன் மூலம் விஷயங்களை மேம்படுத்த வேண்டும் dav1d குறிவிலக்கி ஏற்கனவே Firefox 67 இல் உள்ளது (ஏற்கனவே வெளியிடப்பட்டது, ஆனால் ஆதரவு தோன்றியது - தோராயமாக மொழிபெயர்ப்பு.). புதிய பதிப்பைப் பற்றிய விவரங்களுக்கு படிக்கவும் - dav1d 0.3.0 வெளியீடு: இன்னும் வேகமாக!

ஸ்மார்ட்போன்களில்

பொருத்தமான டிகோடர்கள் இல்லாததால் ஸ்மார்ட்போன்களுக்கு தற்போது வன்பொருள் ஆதரவு இல்லை. நீங்கள் மென்பொருள் டிகோடிங் செய்யலாம், இருப்பினும் இது அதிக பேட்டரி நுகர்வுக்கு வழிவகுக்கும். AV1 ஹார்டுவேர் டிகோடிங்கை ஆதரிக்கும் முதல் மொபைல் SOCகள் 2020 இல் தோன்றும்.

பின்னர் கட்டுரையின் வாசகர்கள், "மொபைல் ஃபோன்கள் இன்னும் சரியாக ஆதரிக்கவில்லை என்றால், ஏன் AV1 ஐப் பயன்படுத்த வேண்டும்?"

AV1 என்பது மிகவும் புதிய கோடெக் ஆகும், அதன் தழுவலின் ஆரம்பத்திலேயே நாங்கள் இருக்கிறோம். இந்த கட்டுரையை "நீங்கள் சமைக்கும்போது, ​​​​கூட்டம் பின்தொடரும்" கட்டமாக கருதுங்கள். டெஸ்க்டாப் ஆதரவு சில பார்வையாளர்களுக்கு தளங்களை விரைவுபடுத்தும். இலக்கு சாதனத்தில் AV1 ஆதரிக்கப்படாதபோது, ​​பழைய கோடெக்குகளை ஒரு பின்னடைவு காட்சியாகப் பயன்படுத்தலாம். ஆனால் பயனர்கள் AV1 ஆதரவுடன் சாதனங்களுக்கு மாறுவதால், அனைத்தும் தயாராக இருக்கும். இதை அடைய, கீழே காட்டப்பட்டுள்ளபடி ஒரு வீடியோ குறிச்சொல்லை உருவாக்க வேண்டும், இது உலாவி அதன் விருப்பமான வடிவமைப்பைத் தேர்ந்தெடுக்க அனுமதிக்கும் - AV1 - >> VP9 - >> H.264. சரி, பயனரிடம் பழைய சாதனம் அல்லது நேவிகேட்டர் இருந்தால் அது வீடியோவை ஆதரிக்காது (இது H264 உடன் மிகவும் சாத்தியமில்லை), பின்னர் அவர் 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>

AV1 உருவாக்கம்

AV1 இல் வீடியோக்களை உருவாக்குவது எளிது. உங்கள் கணினிக்கான சமீபத்திய ffmpeg உருவாக்கத்தை இங்கிருந்து பதிவிறக்கவும் மற்றும் கீழே உள்ள கட்டளைகளைப் பயன்படுத்தவும். இலக்கு பிட்ரேட்டை அடைய 2 பாஸ்களைப் பயன்படுத்துகிறோம். இதைச் செய்ய, ffmpeg ஐ இரண்டு முறை இயக்குவோம். முதல் முறையாக இல்லாத கோப்பில் முடிவை எழுதுகிறோம். இது ffmpeg இன் இரண்டாவது இயக்கத்திற்குத் தேவைப்படும் பதிவை உருவாக்கும்.

# 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

அளவுருக்களின் முறிவு இங்கே:

-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 - Включаем быстрый старт видео, перемещая часть данных в начало файла. Это позволит начать воспроизведение ещё до полной загрузка файла.

GIFகளை உருவாக்குதல்

GIF ஐ உருவாக்க நான் கீழே உள்ள கட்டளையைப் பயன்படுத்தினேன். அளவைக் குறைக்க, அசல் 720 fps வீடியோவிற்குப் பதிலாக GIF ஐ 12px அகலமாகவும் 24 fps ஆகவும் அளவிட்டேன்.

./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

சோதனை முடிவுகள்

நூறு முறை படிப்பதை விட ஒரு முறை பார்ப்பது நல்லது, இல்லையா? எங்கள் நோக்கங்களுக்காக AV1 சரியான தேர்வு என்பதை உறுதி செய்வோம். இங்கே கிடைக்கும் இலவச Tears Of Steel வீடியோவை எடுத்தேன் https://mango.blender.org/, மற்றும் AV1, VP9, ​​H.264 கோடெக்குகளுக்கு தோராயமாக அதே பிட்ரேட்டைப் பயன்படுத்தி மாற்றப்பட்டது. முடிவுகள் கீழே உள்ளன, எனவே அவற்றை நீங்களே ஒப்பிடலாம்.

குறிப்பு 1: கீழே உள்ள கோப்பு உங்களுக்காக ஏற்றப்படவில்லை என்றால், உங்கள் உலாவியைப் புதுப்பிக்க வேண்டிய நேரம் இதுவாக இருக்கலாம். Chrome, Vivaldi, Brave அல்லது Opera போன்ற Chromium அடிப்படையிலான உலாவியை நான் பரிந்துரைக்கிறேன். AV1 ஆதரவு பற்றிய சமீபத்திய தகவல்கள் இதோ https://caniuse.com/#feat=av1

குறிப்பு 2: Linux இல் Firefox 66 க்கு நீங்கள் கொடியை அமைக்க வேண்டும் media.av1.enabled அர்த்தத்தில் true в about:config

குறிப்பு 3: வழக்கமான GIFகளின் பெரிய அளவு மற்றும் இந்தப் பக்கத்தை ஏற்றுவதற்குத் தேவைப்படும் டேட்டாவின் அளவு காரணமாக அவற்றை கீழே சேர்க்க வேண்டாம் என்று முடிவு செய்துள்ளேன்! (இது முரண்பாடாக இருக்கும், ஏனெனில் இந்தப் பக்கம் ஒரு பக்கத்தில் உள்ள தரவின் அளவைக் குறைப்பதைப் பற்றியது :)). ஆனால் இறுதி GIFகளை இங்கே பார்க்கலாம் https://github.com/singhkays/its-time-replace-gifs-with-av1-video/blob/master/GIFs

மொழிபெயர்ப்பாளரின் குறிப்பு: தானாக இயக்கவும் கோப்பை லூப் செய்யவும் Habr உங்களை அனுமதிக்காது, எனவே நீங்கள் தரத்தை மட்டுமே மதிப்பிட முடியும். "அனிமேஷன் படங்கள்" நேரலையில் எப்படி இருக்கும் என்பதை நீங்கள் பார்க்கலாம் அசல் கட்டுரை.

காட்சி 1 @ 200 Kbps

இங்கு நிறைய இயக்கம் உள்ளது, இது குறைந்த பிட்ரேட்டுகளில் குறிப்பாக உணர்திறன் கொண்டது. இந்த பிட்ரேட்டில் H.264 எவ்வளவு மோசமாக உள்ளது என்பதை நீங்கள் உடனடியாகப் பார்க்கலாம்; சதுரங்கள் உடனடியாகத் தெரியும். VP9 நிலைமையை சிறிது மேம்படுத்துகிறது, ஆனால் சதுரங்கள் இன்னும் தெரியும். AV1 தெளிவாக வெற்றி பெற்று, வெளிப்படையாக சிறந்த படத்தை உருவாக்குகிறது.

H.264

VP9

AV1

காட்சி 2 @ 200 Kbps

இங்கே நிறைய ஒளிஊடுருவக்கூடிய CGI உள்ளடக்கம் உள்ளது. முடிவுகள் கடந்த முறை போல் வித்தியாசமாக இல்லை, ஆனால் ஒட்டுமொத்தமாக AV1 சிறப்பாக உள்ளது.

H.264

VP9

AV1

காட்சி 3 @ 100 Kbps

இந்தக் காட்சியில், பிட்ரேட்டை 100 Kbps ஆகக் குறைக்கிறோம் மற்றும் முடிவுகள் சீரானதாக இருக்கும். AV1 குறைந்த பிட்ரேட்டிலும் அதன் தலைமையை பராமரிக்கிறது!

H.264

VP9

AV1

கேக் மீது செர்ரி

GIF உடன் ஒப்பிடும்போது சேமித்த அலைவரிசையின் அளவை உணர்ந்து இந்தக் கட்டுரையை முடிக்க - அனைத்து வீடியோக்களின் மொத்த அளவு அதிகமாக உள்ளது... 1.62 எம்பி!! சரி. சில 1,708,032 பைட்டுகள்! ஒப்பிடுகையில், ஒவ்வொரு காட்சிக்கும் GIF மற்றும் AV1 வீடியோ அளவுகள் இங்கே உள்ளன

GIF,
AV1

காட்சி 1
11.7 எம்பி
0.33 எம்பி

காட்சி 2
7.27 எம்பி
0.18 எம்பி

காட்சி 3
5.62 எம்பி
0.088 எம்பி

வெறுமனே அதிர்ச்சி தரும்! ஆமாம் தானே?

குறிப்பு: VP9 மற்றும் H264 இன் கோப்பு அளவுகள் வழங்கப்படவில்லை, ஏனெனில் அவை ஒரே பிட்ரேட்டைப் பயன்படுத்துவதால் நடைமுறையில் AV1 இலிருந்து வேறுபடுவதில்லை. இந்த கோடெக்குகள் சிறிய கோப்பு அளவுகளில் GIF ஐ விட சிறந்த தரத்தை உருவாக்குகின்றன என்பதை முன்னிலைப்படுத்த, அதே அளவுகளுடன் மேலும் இரண்டு நெடுவரிசைகளைச் சேர்ப்பது தேவையற்றதாக இருக்கும்.

ஆதாரம்: www.habr.com

கருத்தைச் சேர்