GIF to MP4 정보
GIF to MP4본문
@우성짱 님의 https://sir.kr/cm_free/1561548 의 글을 보고 찾아 봤습니다.
@볼피드 님이 컨텐츠 몰에서 판매하고 있는 상품 https://sir.kr/cmall/1587895919
웹어셈블리를 이용하여 직접 mp4를 클라이언트에서 인코딩합니다. 라고 되어 있습니다.
그러다 보니
@우성짱 님의 https://sir.kr/cm_free/1561471 이 글을 보면 WebM은 애플 기계에서는 한계가 있다고 합니다.
그럼 현재로서는 FFMPEG을 써야 되는데, 이것은 웹 호스팅에서는 불가능 합니다.
최소 VPS를 사용해야 가능할 것 같습니다.
그럼 그누보드에서는 썸네일처럼 처리하면 될 것 같습니다.
https://github.com/gnuboard/gnuboard5/blob/master/lib/thumbnail.lib.php#L180 에서 $is_animate 일때
이부분에서 gif to mp4로 하면 될 것 같습니다.
https://rigor.com/blog/optimizing-animated-gifs-with-html5-video/
그런데 그누보드에서 mp4 파일이 올라가나요?
추천
3
3
댓글 19개
현재 방식은 업로더가 인코딩 하는 방식이 아닌, 인코딩이 가능한 기기가 접속했을 떄, 통상적으로 10초 이내에 인코딩 가능한 사양의 유저가 들어왔을 때 해당 자원을 이용하여 인코딩 되어지고 그전에는 원본이 보여지는 형태입니다.
그리고 인코딩이 된 후에는 인코딩 상태로 보여지기 때문에 기기에 상관없이 보여집니다.
웹 어셈블리를 이용하여 c로 인코딩 된 라이브러리를 자바스크립트로 변환이 되어있는 상태고, ffmpeg의 h264 코덱만 인코딩 할 수 있게 추출하여 바꾼것이기 때문에 ffmpeg과 실제로 기능의 차이는 없습니다.(1M 약간 넘는 js)
단, 속도 및 스크립트의 크기로 인해 일부 기능이 제거되었기에 일부 잘못된 GIF 포맷에서는 색깔값이 잘못 들어가 전체적으로 누렇게 뜨는 현상이 있는데 해당 현상이 나타나는 경우 관리자가 직접 확인하여 웹 ffmpeg(클라이언트단에서 동작하는)를 끌어와 수정할 수 있게 되어있습니다.(실제로 설치하면 100MB가 넘음, cdn을 활용하면 25MB)이고 이것은 ffmpeg 자체가 원래 용량이 크기 때문에 클라이언트에서 동작할 때 배보다 배꼽이 큰 경우가 발생합니다.
속도도 위에 말한 방식에 비해 5~10배이상 느리구요.
웹호스팅 상에서는 현재 브라우저의 기능이 좀 더 확장되고 개발되지 않는 이상 이정도가 최대라고 생각됩니다.
그리고 인코딩이 된 후에는 인코딩 상태로 보여지기 때문에 기기에 상관없이 보여집니다.
웹 어셈블리를 이용하여 c로 인코딩 된 라이브러리를 자바스크립트로 변환이 되어있는 상태고, ffmpeg의 h264 코덱만 인코딩 할 수 있게 추출하여 바꾼것이기 때문에 ffmpeg과 실제로 기능의 차이는 없습니다.(1M 약간 넘는 js)
단, 속도 및 스크립트의 크기로 인해 일부 기능이 제거되었기에 일부 잘못된 GIF 포맷에서는 색깔값이 잘못 들어가 전체적으로 누렇게 뜨는 현상이 있는데 해당 현상이 나타나는 경우 관리자가 직접 확인하여 웹 ffmpeg(클라이언트단에서 동작하는)를 끌어와 수정할 수 있게 되어있습니다.(실제로 설치하면 100MB가 넘음, cdn을 활용하면 25MB)이고 이것은 ffmpeg 자체가 원래 용량이 크기 때문에 클라이언트에서 동작할 때 배보다 배꼽이 큰 경우가 발생합니다.
속도도 위에 말한 방식에 비해 5~10배이상 느리구요.
웹호스팅 상에서는 현재 브라우저의 기능이 좀 더 확장되고 개발되지 않는 이상 이정도가 최대라고 생각됩니다.
@볼피드 웹어셈블리이면 클라이언트에 별 문제가 없을 것 같은데 애플 기계에서의 한계 에 대한것은 사실인가요?
@마젠토 WebM의 포맷일 경우에 그렇고, MP4 포맷인 경우 애플 기기에도 상관없이 보여집니다
@볼피드 글을 수정해 놨습니다. mp4지원이 빨리 필요하겠네요. 그누보드에서도 지원안하는 것 같은데, 에디터 업로드에서 mp4 업로드를 지원해야겠네요
@마젠토 많은 커뮤니티에서 GIF 움짤을 여전히 사용하고 있는것은 비디오 포맷이 아직 대중화 되지 않았고 각각의 브라우저마다 비디오 포맷의 결과가 다르기 때문으로 보여집니다.
GIF 문제는 외국도 다를게 없습니다
그나마 MP4(H264) 포맷이 움짤 대용으로 쓰이며 주목 받는 것은 해당 포맷의 영상은 현재 쓰이는 99%의 기기에서 문제없이 동작하기 때문이구요.
이미지와 동영상이라는 갭. 그리고 GIF로 만드는것이 유저들에게 동영상으로 제작하여 업로드하는것보다 훨씬 접근성이나 편의성이 있기 때문에 GIF는 여전히 남아있을거라 생각됩니다.
이미지 포맷쪽에서는 더 효율적인 APNG webp 등의 포맷도 브라우저 호환성에 의해 제약을 받고 있는 상태이니까요.
트래픽은 사용자가 신경 쓸 부분이 아니기 때문에 결국 사이트 관리자들이 알아서 최적화 시켜야 할 오랜 과제라고 생각되네요.
GIF 문제는 외국도 다를게 없습니다
그나마 MP4(H264) 포맷이 움짤 대용으로 쓰이며 주목 받는 것은 해당 포맷의 영상은 현재 쓰이는 99%의 기기에서 문제없이 동작하기 때문이구요.
이미지와 동영상이라는 갭. 그리고 GIF로 만드는것이 유저들에게 동영상으로 제작하여 업로드하는것보다 훨씬 접근성이나 편의성이 있기 때문에 GIF는 여전히 남아있을거라 생각됩니다.
이미지 포맷쪽에서는 더 효율적인 APNG webp 등의 포맷도 브라우저 호환성에 의해 제약을 받고 있는 상태이니까요.
트래픽은 사용자가 신경 쓸 부분이 아니기 때문에 결국 사이트 관리자들이 알아서 최적화 시켜야 할 오랜 과제라고 생각되네요.
@볼피드 덕분에 배우고 갑니다.
움짤 mp4를 직접 업로드하는 커뮤니티는 못봤습니다.
gif가 유통되는 기본 확장자이구요.
ffmpeg를 통해 mp4로 변환하는게 대세인데
직접서버에서 하기에는 자원의 한계가 있기 때문에
https://cloudconvert.com/api/v1/convert/gif-to-mp4
이런 api를 써서 변환하는 것 같습니다.
gif가 유통되는 기본 확장자이구요.
ffmpeg를 통해 mp4로 변환하는게 대세인데
직접서버에서 하기에는 자원의 한계가 있기 때문에
https://cloudconvert.com/api/v1/convert/gif-to-mp4
이런 api를 써서 변환하는 것 같습니다.
@우성짱 엄청 비싸네요. Docker 파일로 알아보고는 있는데, 머리는 되는데, 역시 손이 안되네요
클리앙이라는 커뮤니티는
git 가 mp4로 바뀌어 있더라고요.
git 가 mp4로 바뀌어 있더라고요.
@선구자 갈수록 대세가 mp4인가 보네요.
웹호스팅에서 FFMPEG 이 항상 안될거라는 생각을 살짝 바꿔보세요.
@라엘 좋은 방법 있으면 힌트라도
@마젠토 예제 웹호스팅 계정이 있으시다면 샘플코드 약간 짜드릴수있어요.
@라엘 웹호스팅 계정은 없습니다. 힌트만이라도 살짝 주시면..
@라엘 오.. 웹호스팅에서도 되나봐요!
@l2zeo 에. API도 있더군요.. https://developers.gfycat.com/jssdk/
고수님들 한 수 배우고 갑니다 ㅎㅎ
만약에 저라면 파일 업로드 시
Lambda의 파이썬으로 변환하는 걸 짜서 s3에 저장하는 걸로 개발 할 것 같습니다.
만약에 저라면 파일 업로드 시
Lambda의 파이썬으로 변환하는 걸 짜서 s3에 저장하는 걸로 개발 할 것 같습니다.
@똥싼너구리 검색시 제일 많이 나오는 것이 파이썬이긴 합니다.