커서를 미루다 미루다 ...
샤나 인코더 쓰다가 UI 만지기도 귀찮고
720p 보다 큰건 720p
720p 보다 작은건 480p 로 변환해야하는 조건이 있어서 프로그램으로 가능한거 싶어서
CURSOR 를 이용해 짜달라고 했다.
그리곤 성공했습니다. 잘되네요 (충격)
이거 직접 찾아서 시행착오를 거치려면 몇시간에서 몇일은 써야하는데 10분만에 되었습니다.
배울 필요가 없다니 놀랍습니다.
이글 읽기도 귀찮으신분은 이걸로
샘플코드 링크: https://drive.google.com/file/d/1JkNXjw7f03rtBN5ncuk7E6qh57g0A0OQ/view?usp=sharing
다운로드 하시고
npm i
설치 하시고
run.bat
싱행
필수 모듈 설치
npm i fluent-ffmpeg
index.js 코드
console.log('Node.js 프로젝트가 시작되었습니다!');
const ffmpeg = require('fluent-ffmpeg');
const path = require('path');
// 입력 파일 경로와 출력 파일 경로 설정
const inputFile = process.argv[2] || 'input.mp4';
const outputFile = path.join('output', `resized_${path.basename(inputFile)}`);
const targetWidth = process.argv[3] || 1280; // 기본 해상도 1280x720
const targetHeight = process.argv[4] || 720;
// 출력 디렉토리 생성
const fs = require('fs');
if (!fs.existsSync('output')) {
fs.mkdirSync('output');
}
console.log('동영상 해상도 변환을 시작합니다...');
console.log(`입력 파일: ${inputFile}`);
console.log(`변환 해상도: ${targetWidth}x${targetHeight}`);
ffmpeg(inputFile)
.size(`${targetWidth}x${targetHeight}`)
.on('progress', (progress) => {
// 진행률 표시
const percent = Math.round(progress.percent);
process.stdout.write(`\r진행률: ${percent}% | 처리된 프레임: ${progress.frames} | 현재 시간: ${progress.timemark}`);
})
.on('end', () => {
console.log('\n변환이 완료되었습니다!');
console.log(`출력 파일: ${outputFile}`);
})
.on('error', (err) => {
console.error('\n오류가 발생했습니다:', err);
})
.save(outputFile);
싱행 명령어
node index.js 원본영상 가로 세로
하면 output 폴더에 영상이 변환됩니다.
예) node index.js a.mp4 1280 720
이제 이 프로그램을 좀 수정하면대량의 동영상 파일 해상도 관리 프로그램을 만들 수 있을 것입니다.
저는 ffmpeg 가 설치되어있어서 문제가 없었는데
ffmpeg 프로그램이 필요할 수 잇습니다.
ffmpeg 실행파일 설치 방법
여기서 https://www.gyan.dev/ffmpeg/builds/
ffmpeg-release-full.7z 파일을 다운로드
환경변수에 bin 폴더를 걸어야합니다.
(이 방법을 설명해야하나....)
환경 변수 PATH 등록이 완료되면
아무 폴더폴더에서 콘솔창에 ffmpeg 커맨드를 입력하면 동작이 됩니다.
커서 AI 코딩 후기
전혀 모르는 분야에 대한 프로그램 요구 했을때
검색해서 샘플코드를 찾고 이해하는 것보다 훨씬 수월하게 진행할 수 있었습니다.
충격적으로 시간이 절약되었습니다.
AI 코딩에대한 영상
영상: https://www.youtube.com/watch?v=AYaQ85gPaV0
은 코알누