Словник

Що таке висота файлу?

Висота файлу - це вертикальний розмір зображення у файлі, виміряний у пікселях. Зображення, відео та аудіофайли з обкладинкою можуть повідомляти це значення.

height

Висота файлу це вертикальний розмір зображення всередині файлу, порахований у пікселях. Звіт метаданих показує це число в рядку Height. Ширина і висота файлу разом задають розмір зображення, наприклад 1920x1080, де спочатку йде width.

Висота файлу не те саме, що розмір файлу. Висота рахує рядки пікселів, тоді як розмір файлу рахує байти у файлі.

Програма ffprobe з проєкту FFmpeg називає висоту відеопотоку height. ExifTool має тег ImageHeight, який описано в статті Image Height. У відео MOV і MP4 ExifTool бере це значення із заголовка доріжки, тому ці 2 числа можуть відрізнятися.

Які файли містять його

Зображення, відео та аудіофайли з обкладинкою можуть містити висоту. Кожен формат зберігає висоту у своєму місці:

  • MOV і MP4: опис відеосемпла зберігає висоту вихідного зображення у пікселях. Заголовок доріжки зберігає окрему висоту для доріжки.
  • MKV і WebM: елемент PixelHeight зберігає висоту закодованих відеокадрів.
  • AVI: заголовок AVI зберігає висоту зображення.
  • PNG: блок IHDR зберігає висоту в пікселях як 4-байтове число.

Звук не має висоти, тому ffprobe не виводить висоту для аудіопотоку. Аудіофайл усе одно може показувати це значення, якщо містить зображення обкладинки. FFmpeg розглядає таке attached picture як відеопотік, і цей потік має висоту.

Кадр зображення в MP3-файлі не має поля висоти, тому число потрібно отримати з даних зображення. Блок зображення FLAC має власне поле висоти, яке містить 0, коли висота невідома.

Документи працюють інакше. Сторінка PDF вимірюється в одиницях 1/72 дюйма, а не в пікселях. Стаття Page Size пояснює ці значення.

Як виглядає значення

Значення зазвичай є цілим числом пікселів без одиниці виміру. FFmpeg наводить серед інших такі розміри відео, і друге число в кожному розмірі це висота:

  • 1280x720: висота 720
  • 1920x1080: висота 1080
  • 3840x2160: висота 2160
  • 7680x4320: висота 4320

Деякі файли показують інше. Потік субтитрів без висоти показує N/A у ffprobe. Висота зображення SVG може бути довжиною або відсотком.

Звідки походить значення

Програма, яка створює файл, задає висоту. Щоб змінити висоту, змініть розмір або обріжте зображення і збережіть файл знову.

Чому висота може відрізнятися від того, що ви бачите

Відеофайл може зберігати значення повороту, і FFmpeg за замовчуванням обертає відео відповідно до цього значення. Після повороту на 90 градусів видима висота дорівнює збереженій ширині.

Деякі формати також зберігають 2 різні висоти. У файлах Matroska PixelHeight це висота закодованих кадрів, а DisplayHeight це висота для відображення після обрізання. Coded height у FFmpeg також може відрізнятися від висоти, якщо кадр обрізано перед виведенням.

Чому це важливо

Висота дає змогу перевірити файл на відповідність обмеженню за розміром, наприклад у формі завантаження. Якщо в рядку Height зазначено 720, відео має 720 рядків пікселів, навіть якщо в назві файлу вказано 1080.

Висота і ширина також задають кількість пікселів. Відео 1920x1080 має 2 073 600 пікселів у кожному кадрі, тобто приблизно 2,1 мегапікселя.

Для друку тег Y Resolution задає кількість пікселів на дюйм або на сантиметр у напрямку висоти. Поділіть висоту на це число, щоб отримати висоту надрукованого зображення в тій самій одиниці.

Мета ключі