До того, як HD був річчю, процесори легко обробляли декодування відео. Коли HD стала популярною близько 8 років тому, виробники GPU почали впроваджувати прискорене декодування відео у своїх чіпах. Ви можете легко знайти графічні карти, які продаються як підтримуючі відео у форматі HD та деякі інші гасла. Сьогодні будь-який графічний процесор підтримує прискорене відео, навіть інтегровані графічні процесори, такі як Intel HD Graphics або їх попередники, Intel GMA. Без цього доповнення вашому процесору було б важко спробувати перетравити 1080p відео з прийнятною частотою кадрів, не кажучи вже про збільшення споживання енергії. Тому ви вже використовуєте прискорене відео щодня.
Тепер, коли графічні процесори мають все більшу і загальну обчислювальну потужність, вони широко використовуються і для прискорення обробки відео. Ця тенденція почалася приблизно в той же час, коли було введено прискорене декодування. Такі програми, як Badaboom, почали набирати популярність, оскільки виявилося, що GPU набагато краще (пере) кодують відео, ніж процесори. Однак цього раніше не можна було зробити, оскільки GPU бракувало загальних обчислювальних можливостей.
Але GPU вже могли середнього віку масштабувати, обертати та трансформувати зображення, то чому ми не змогли використати ці функції для обробки відео? Ну, ці функції ніколи не були реалізовані для використання таким чином, тому вони були неоптимальними з різних причин.
Програмуючи гру, ви спочатку завантажуєте всі графічні зображення, ефекти тощо в GPU, а потім просто виводите багатокутники і наносите на них відповідні об'єкти. Вам не доведеться надсилати текстури кожен раз, коли вони знадобляться, ви можете завантажити їх і повторно використовувати. Якщо мова йде про обробку відео, вам доведеться постійно подавати кадри в GPU, обробляти їх і повертати їх назад, щоб перекодувати їх на процесорі (пам'ятайте, ми говоримо про час, який раніше був обчислений GPU). Це не так, як повинні були працювати GPU, тому продуктивність була не великою.
Інша справа - графічні процесори не орієнтовані на якість, що стосується перетворень зображень. Коли ви граєте в гру на 40+ кадрів в секунду, ви дійсно не помітите невеликих викривлень пікселів. Навіть якщо б ви хотіли, ігрова графіка не була достатньо детальною для того, щоб люди могли турбуватися. Існують різні хакі та хитрощі, які застосовуються для пришвидшення візуалізації, які можуть трохи вплинути на якість. Відео також відтворюється на досить високих частотах кадрів, тому динамічне масштабування їх при відтворенні є прийнятним, але перекодування або рендерінг має створити результати, які є ідеальними для пікселів або, принаймні, максимально близькими за розумну ціну. Це неможливо досягти без належних функцій, реалізованих безпосередньо в GPU.
В даний час використання графічних процесорів для обробки відео є досить поширеним, оскільки нам потрібна технологія. Чому це не вибір за замовчуванням, це скоріше питання до видавця програми, а не до нас - це їх вибір. Можливо, вони вважають, що їхні клієнти орієнтовані на апаратну обробку відео на процесорі, тому перехід на GPU негативно вплине на продуктивність, але це лише моя здогадка. Інша можливість полягає в тому, що вони все ще розглядають візуалізацію GPU як експериментальну функцію, яка недостатньо стабільна, щоб встановити її як стандартну. Ви не хочете витрачати години на відеозапис лише для того, щоб зрозуміти, що щось накручено через помилку відтворення GPU. Якщо ви все-таки вирішите його використовувати, то ви не можете звинувачувати видавця програмного забезпечення - це було ваше рішення.