fix: GenerateVideoThumbnail (#8825)
* fix: GenerateVideoThumbnail * CHANGELOG * fix cleanup * Revert "fix cleanup" This reverts commit d54cf8262ac01a3deb6b8dd7689ec144d4d09ea8.
This commit is contained in:
		
							parent
							
								
									3a42fe50c6
								
							
						
					
					
						commit
						1d8ec102f1
					
				
					 2 changed files with 12 additions and 7 deletions
				
			
		|  | @ -9,6 +9,13 @@ | |||
| You should also include the user name that made the change. | ||||
| --> | ||||
| 
 | ||||
| ## 12.x.x (unreleased) | ||||
| 
 | ||||
| ### Improvements | ||||
| 
 | ||||
| ### Bugfixes | ||||
| - Fix GenerateVideoThumbnail failed @mei23 | ||||
| 
 | ||||
| ## 12.111.1 (2022/06/13) | ||||
| 
 | ||||
| ### Bugfixes | ||||
|  |  | |||
|  | @ -1,12 +1,10 @@ | |||
| import * as fs from 'node:fs'; | ||||
| import * as path from 'node:path'; | ||||
| import { createTemp } from '@/misc/create-temp.js'; | ||||
| import { createTempDir } from '@/misc/create-temp.js'; | ||||
| import { IImage, convertToJpeg } from './image-processor.js'; | ||||
| import FFmpeg from 'fluent-ffmpeg'; | ||||
| 
 | ||||
| export async function GenerateVideoThumbnail(source: string): Promise<IImage> { | ||||
| 	const [file, cleanup] = await createTemp(); | ||||
| 	const parsed = path.parse(file); | ||||
| 	const [dir, cleanup] = await createTempDir(); | ||||
| 
 | ||||
| 	try { | ||||
| 		await new Promise((res, rej) => { | ||||
|  | @ -16,15 +14,15 @@ export async function GenerateVideoThumbnail(source: string): Promise<IImage> { | |||
| 			.on('end', res) | ||||
| 			.on('error', rej) | ||||
| 			.screenshot({ | ||||
| 				folder: parsed.dir, | ||||
| 				filename: parsed.base, | ||||
| 				folder: dir, | ||||
| 				filename: 'out.png',	// must have .png extension
 | ||||
| 				count: 1, | ||||
| 				timestamps: ['5%'], | ||||
| 			}); | ||||
| 		}); | ||||
| 
 | ||||
| 		// JPEGに変換 (Webpでもいいが、MastodonはWebpをサポートせず表示できなくなる)
 | ||||
| 		return await convertToJpeg(file, 498, 280); | ||||
| 		return await convertToJpeg(`${dir}/out.png`, 498, 280); | ||||
| 	} finally { | ||||
| 		cleanup(); | ||||
| 	} | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue