1
0
mirror of https://github.com/immich-app/immich.git synced 2025-08-07 23:03:36 +02:00

feat(server): advanced settings for transcoding (#3775)

* set stream with `-map` flag

* updated tests

* fixed audio stream mapping

* added bframe setting to config

* updated api

* added b-frame option in dashboard

* updated tests and formatting

* "Advanced" section for FFmpeg with extra options

* updated api

* updated tests and formatting

* styling

* made vp9 bitstream filters conditional on b-frames

* fixed gop size condition

* add cq override

* simplified isEdited conditions

* simplified conditional flow for cq mode

* fixed dto

* clarified cq mode in description

* formatting

* added npl setting

* Adjusted b-frame title and description

* fixed rebase

* changed defaults for pascal compatibility, added temporal aq setting

* updated api

* added temporal aq to ui

* polished dashboard

* formatting
This commit is contained in:
Mert
2023-09-02 21:22:42 -04:00
committed by GitHub
parent 67ac686704
commit f8ff342852
24 changed files with 797 additions and 188 deletions

View File

@ -909,6 +909,21 @@ export const CLIPMode = {
export type CLIPMode = typeof CLIPMode[keyof typeof CLIPMode];
/**
*
* @export
* @enum {string}
*/
export const CQMode = {
Auto: 'auto',
Cqp: 'cqp',
Icq: 'icq'
} as const;
export type CQMode = typeof CQMode[keyof typeof CQMode];
/**
*
* @export
@ -2812,24 +2827,54 @@ export interface SystemConfigFFmpegDto {
* @memberof SystemConfigFFmpegDto
*/
'accel': TranscodeHWAccel;
/**
*
* @type {number}
* @memberof SystemConfigFFmpegDto
*/
'bframes': number;
/**
*
* @type {CQMode}
* @memberof SystemConfigFFmpegDto
*/
'cqMode': CQMode;
/**
*
* @type {number}
* @memberof SystemConfigFFmpegDto
*/
'crf': number;
/**
*
* @type {number}
* @memberof SystemConfigFFmpegDto
*/
'gopSize': number;
/**
*
* @type {string}
* @memberof SystemConfigFFmpegDto
*/
'maxBitrate': string;
/**
*
* @type {number}
* @memberof SystemConfigFFmpegDto
*/
'npl': number;
/**
*
* @type {string}
* @memberof SystemConfigFFmpegDto
*/
'preset': string;
/**
*
* @type {number}
* @memberof SystemConfigFFmpegDto
*/
'refs': number;
/**
*
* @type {AudioCodec}
@ -2848,6 +2893,12 @@ export interface SystemConfigFFmpegDto {
* @memberof SystemConfigFFmpegDto
*/
'targetVideoCodec': VideoCodec;
/**
*
* @type {boolean}
* @memberof SystemConfigFFmpegDto
*/
'temporalAQ': boolean;
/**
*
* @type {number}