인프런 커뮤니티 질문&답변

chan seok yang님의 프로필 이미지
chan seok yang

작성한 질문수

따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기

format에러 도와주시면 감사하겠습니다!

작성

·

421

0

John Ahn님 강의 정말 잘 듣고 있습니다. 

유튜브로 한국어 유튜브 클론 강의 듣고 있습니다.

처음부터 따라하고 있는데 6강에서 썸네일이 만들어 지지 않습니다.

window로 ffmpeg를 잘 설치하였습니다! 

그래서 깃에 올려주셔서 완성본을 다운받아 실행해도  이런식으로 format이 잘 못되었다고 나오거나 ffprobe error가 나옵니다!  uploads 폴더와 thumbnails 폴더에는 잘 저장되어 있습니다.  도와주시면 감사하겠습니다!!

그리고 제가 보일러 플레이트나 movie api로 만드신 인강에서는 proxy에 문제가 없었습니다.

그런데 이번 강의에서 업로드 할때 썸네일이 보이지 않고 제출 버튼을 누르면 저렇게 마지막에 hpm

 에러가 나오고 있습니다!

유뷰트에 영어버전 유뷰트 클론을 보고 저와 같은 에러가 있는 사람이 있어서 John Ahn 님이 작성하신 두번째 코드로 작성하였을때  아래 사진과 같이 나왔습니다

답변 12

1

John Ahn님의 프로필 이미지
John Ahn
지식공유자

안녕하세요  보니깐  ffprobe 쪽을 안넣으셨었네요 ^^  

이 부분을 


router.post("/thumbnail", (req, res) => {
let filePath = ""
let fileDuration = ""
ffmpeg(req.body.url)
.on('filenames', function (filenames) {
console.log('Will generate ' + filenames.join(', '))
console.log(filenames)
filePath = "uploads/thumbnails/" + filenames[0]
})
.on('end', function () {
console.log('Screenshots taken');
return res.json({ success: true, url: filePath, fileName: filenames, fileDuration: fileDuration });
})
.on('error', function (err) {
console.error(err);
return res.json({ success: false, err });
})
.screenshots({
// Will take screenshots at 20%, 40%, 60% and 80% of the video
count: 3,
folder: 'uploads/thumbnails',
size: '320x240',
//'%b': input basename (filename w/o extension)
filename: 'thumbnail-%b.png'
})
});

아래로  바꿔 주세요 ~ ! 


router.post("/thumbnail", (req, res) => {

let thumbsFilePath ="";
let fileDuration ="";

ffmpeg.ffprobe(req.body.filePath, function(err, metadata){
console.dir(metadata);
console.log(metadata.format.duration);

fileDuration = metadata.format.duration;
})


ffmpeg(req.body.filePath)
.on('filenames', function (filenames) {
console.log('Will generate ' + filenames.join(', '))
thumbsFilePath = "uploads/thumbnails/" + filenames[0];
})
.on('end', function () {
console.log('Screenshots taken');
return res.json({ success: true, thumbsFilePath: thumbsFilePath, fileDuration: fileDuration})
})
.screenshots({
// Will take screens at 20%, 40%, 60% and 80% of the video
count: 3,
folder: 'uploads/thumbnails',
size:'320x240',
// %b input basename ( filename w/o extension )
filename:'thumbnail-%b.png'
});

});

이래도 안되시면 다시 다시 질문주세요 ~!!! 수고하세요 ^^ 

1

John Ahn님의 프로필 이미지
John Ahn
지식공유자

아 다시 상기시켜주셔서 감사합니다 ... !   제가  놓치고 지나가는게 있어서  제가 혹시나 답장이 늦으면 이렇게 
다시 글써주시면 알림이 와서 좋은것 같아요 !  오늘 회사 끝나고 꼭 봐드리겠습니다 !!! 

0

john Ahn님 감사합니다!!!

 제가 잘못된걸로 계속하다보니 실수 한 것 같습니다! 

앞으로 남은 강의 열심히 듣겠습니다 

도와 주셔서 감사합니다!

0

감사합니다   정말 좋은 강의라 열심히 배우겠습니다!

0

John Ahn 님 강의를 더 듣고싶습니다! 

확인해주시면 정말 감사하겠습니다!!!

0

https://webolutions.tistory.com/131

네 이거 보고 환경변수 까지 설정했습니다!

0

혹시 환경변수에 ffmpeg 경로 설정해주셨나요?

0

https://github.com/sdc02408/youtubeclone

올렸습니다!

user db는 제가 userdb가 있어서 usera 라고 하였습니다 

0

John Ahn님의 프로필 이미지
John Ahn
지식공유자

혹시 github 주소좀 올려주시겠어요  ?  제가 직접해보는게 정확하게 문제를 발견할수있어서요~ 

0

껐다 켜도 되지가 않습니다!

0

컴퓨터 한번 껏다가 다시 켜보세요. 저는 그렇게 했더니 잘 되더라고요~

0

chan seok yang님의 프로필 이미지
chan seok yang

작성한 질문수

질문하기