mirror of
				https://github.com/immich-app/immich.git
				synced 2025-10-30 18:22:37 -04:00 
			
		
		
		
	fix(server): wrong video rotation with QSV and RKMPP decoding (#10905)
This commit is contained in:
		
							parent
							
								
									c1036d6f88
								
							
						
					
					
						commit
						678111ed3b
					
				| @ -1573,6 +1573,7 @@ describe(MediaService.name, () => { | ||||
|             '-hwaccel qsv', | ||||
|             '-hwaccel_output_format qsv', | ||||
|             '-async_depth 4', | ||||
|             '-noautorotate', | ||||
|             '-threads 1', | ||||
|           ]), | ||||
|           outputOptions: expect.arrayContaining([ | ||||
| @ -1838,7 +1839,12 @@ describe(MediaService.name, () => { | ||||
|         '/original/path.ext', | ||||
|         'upload/encoded-video/user-id/as/se/asset-id.mp4', | ||||
|         { | ||||
|           inputOptions: expect.arrayContaining(['-hwaccel rkmpp', '-hwaccel_output_format drm_prime', '-afbc rga']), | ||||
|           inputOptions: expect.arrayContaining([ | ||||
|             '-hwaccel rkmpp', | ||||
|             '-hwaccel_output_format drm_prime', | ||||
|             '-afbc rga', | ||||
|             '-noautorotate', | ||||
|           ]), | ||||
|           outputOptions: expect.arrayContaining([ | ||||
|             `-c:v h264_rkmpp`, | ||||
|             '-c:a copy', | ||||
|  | ||||
| @ -732,7 +732,13 @@ export class QsvHwDecodeConfig extends QsvSwDecodeConfig { | ||||
|       throw new Error('No QSV device found'); | ||||
|     } | ||||
| 
 | ||||
|     const options = ['-hwaccel qsv', '-hwaccel_output_format qsv', '-async_depth 4', ...this.getInputThreadOptions()]; | ||||
|     const options = [ | ||||
|       '-hwaccel qsv', | ||||
|       '-hwaccel_output_format qsv', | ||||
|       '-async_depth 4', | ||||
|       '-noautorotate', | ||||
|       ...this.getInputThreadOptions(), | ||||
|     ]; | ||||
|     const hwDevice = this.getPreferredHardwareDevice(); | ||||
|     if (hwDevice) { | ||||
|       options.push(`-qsv_device ${hwDevice}`); | ||||
| @ -910,7 +916,7 @@ export class RkmppHwDecodeConfig extends RkmppSwDecodeConfig { | ||||
|       throw new Error('No RKMPP device found'); | ||||
|     } | ||||
| 
 | ||||
|     return ['-hwaccel rkmpp', '-hwaccel_output_format drm_prime', '-afbc rga']; | ||||
|     return ['-hwaccel rkmpp', '-hwaccel_output_format drm_prime', '-afbc rga', '-noautorotate']; | ||||
|   } | ||||
| 
 | ||||
|   getFilterOptions(videoStream: VideoStreamInfo) { | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user