본문 바로가기

ffmpeg

(4)
ffmpeg 으로 간단히 gif 만들어 보기. 가끔 짤방을 만들기 위해 gif 을 만들고 싶은 경우가 있는데, ffmpeg 으로 간단히 만들 수 있는 방법을 소개 해 드립니다. 먼저 ffmpeg 이 필요 한데, 자신의 시스템에서 최고의 성능을 내기 위해서는 직접 빌드 하는 방법도 있겠지만, 대부분 Windows 에서 gcc 와 yasm 같은 컴파일러 환경이 갖춰 져 있기가 만무 하므로 다음과 같이 수행 할 수 있습니다. 먼저 ffmpeg 을 다음 URL 에서 받으실 수 있으며, 자신의 시스템에 맞는 32bit 또는 64bit static 버젼으로 받습니다. https://ffmpeg.zeranoe.com/builds/ 그런 다음 압축을 풀고 bin 폴더 안의 ffmpeg.exe 만 변환 하려는 파일이 있는 곳에 복사 한 다음, cmd 나 powers..
ffmpeg 2.8.2 에서 3.0.2 로 옮기다. 처음 Anystreaming windows client 를 만들면서 사용했던 ffmpeg 이 2.8.1 이었던 걸로 기억 합니다. 안드로이드나 타 플랫폼에서도 사용에 지장이 없던 버젼이라 안전빵에 쓰다가 2.8.2 로 올리면서 RTSP 재생을 하고 나면 무려 50MB 씩 메모리에 남아 있는 이상한 문제에 시달리기 시작 했었습니다. client 자체에 워낙 다양한 기능을 누가 원해서 끼워 넣다 보니 메모리 누수가 생긴 것인가?! 하고 긴장을 하고 최대한 단순하게 만든 내 코드에 무슨 문제가 생긴 것 인가 를 무려 3일이나 고민을 했습니다. (불행히 ffmpeg 2.8.2 적용은 아주 오래 전에 했었는데 메모리 누수가 있는지 일주일 전에 알았습니다...) 도저히 왜 메모리 누수가 생기는지 못찾고, 단지 ff..
리눅스에서 RaspberryPi 를 위한 ffmpeg 라이브러리 빌드 하기. 라즈베리파이(이하 RPI) 에서도 ffmpeg 을 쓰는데 뭔가 성능이 안나온다는 친구의 말을 듣고 일단 ffmpeg 을 RPI 개발 환경에서 빌드 할 수 있도록 간단히 꾸며 보았습니다. 단, 이 방법은 이미 다른 cross-platform 을 쓰고 있는 상태에서 빌드 하는 환경을 만들기 위해 단순히 ffmpeg 빌드를 위해 몇가지 스크립트를 추가해서 사용하는 방법을 설명 하고 있습니다. 먼저 RPI 빌드 툴을 받아야 하므로 아래처럼 했습니다. (이미 있으신 분들은 skip) 먼저 개인적으로 모든 소스를 밀어 넣는 Project 밑에 raspberrypi 디렉터리를 하나 만들었습니다. github 에서 RPI toolkit 을 clone 하여 tools 로 디렉터리가 만들어 지도록 합니다. 이로서 RPI ..
[FLTK] ffmpeg library 붙이기 1단계 OK. 근래 ffmpeg 을 빌드 해서 BGRA 4bytes 픽셀 데이터를 얻어 화면에 뿌리는 작업을 하는 김에 FLTK 를 붙여 본 작업을 진행 하고 있습니다. 물론 이 작업은 순조롭게 진행 되어 2개의 후면 버퍼로 그리는데 지장 없이 완료 되었습니다. ffmpeg 의 기본 SDL 을 이용한 예제 보다 반응속도가 빠르고 frame skip 을 저해 하는 요소도 비동기적으로 설계된 부분덕분에 없는 편 입니다만, 화면을 처리 하는 부분이 thread 대신 timer 로 만들어 테스트 해서 초당 화면 렌더링 속도는 떨어지는 편 인 듯 합니다. 제작이 완료 되는 대로 사용된 ffmpeg 및 예제 소스는 제 gitHub resource 중에 포함 시키도록 하여 GPL/LGPL 에 따라 공개 하도록 하겠습니다.