mirror of
https://github.com/immich-app/immich
synced 2025-10-17 18:19:27 +00:00
feat(server): transcoding hardware acceleration (#3171)
* added transcode configs for nvenc,qsv and vaapi * updated dev docker compose * added software fallback * working vaapi * minor fixes and added tests * updated api * compile libvips * move hwaccel settings to `hwaccel.yml` * changed default dockerfile, moved `readdir` call * removed unused import * minor cleanup * fix for arm build * added documentation, minor fixes * added intel driver * updated docs styling * uppercase codec and api names * formatting * added tests * updated docs * removed semicolons * added link to `hwaccel.yml` * added newlines * added `hwaccel` section to docker-compose.prod.yml * ensure mesa drivers are installed * switch to mimalloc for sharp * moved build version and sha256 to json * let libmfx set the render device * possible fix for vp9 on qsv * updated tests * formatting * review suggestions * semicolon * moved `LD_PRELOAD` to start script * switched to jellyfin's ffmpeg package * fixed dockerfile * use cqp instead of icq for qsv vp9 * updated dockerfile * added sha256sum for other platforms * fixtures
This commit is contained in:
parent
b9cda59172
commit
ee49f470b7
44 changed files with 1308 additions and 68 deletions
26
web/src/api/open-api/api.ts
generated
26
web/src/api/open-api/api.ts
generated
|
|
@ -666,13 +666,13 @@ export interface AssetStatsResponseDto {
|
|||
* @type {number}
|
||||
* @memberof AssetStatsResponseDto
|
||||
*/
|
||||
'total': number;
|
||||
'videos': number;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
* @memberof AssetStatsResponseDto
|
||||
*/
|
||||
'videos': number;
|
||||
'total': number;
|
||||
}
|
||||
/**
|
||||
*
|
||||
|
|
@ -2510,6 +2510,12 @@ export interface SystemConfigDto {
|
|||
* @interface SystemConfigFFmpegDto
|
||||
*/
|
||||
export interface SystemConfigFFmpegDto {
|
||||
/**
|
||||
*
|
||||
* @type {TranscodeHWAccel}
|
||||
* @memberof SystemConfigFFmpegDto
|
||||
*/
|
||||
'accel': TranscodeHWAccel;
|
||||
/**
|
||||
*
|
||||
* @type {number}
|
||||
|
|
@ -2858,6 +2864,22 @@ export const TimeGroupEnum = {
|
|||
export type TimeGroupEnum = typeof TimeGroupEnum[keyof typeof TimeGroupEnum];
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
* @enum {string}
|
||||
*/
|
||||
|
||||
export const TranscodeHWAccel = {
|
||||
Nvenc: 'nvenc',
|
||||
Qsv: 'qsv',
|
||||
Vaapi: 'vaapi',
|
||||
Disabled: 'disabled'
|
||||
} as const;
|
||||
|
||||
export type TranscodeHWAccel = typeof TranscodeHWAccel[keyof typeof TranscodeHWAccel];
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
* @export
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue