기본 콘텐츠로 건너뛰기

라즈베리파이 조금더 쾌적한 트랜스코딩방법..

- ffmpeg 다운로드 $ git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg $ cd ffmpeg $ mkdir dependencies $ cd dependencies/ $ mkdir output - ffmpeg 컴파일 $ git clone http://git.videolan.org/git/x264.git $ cd x264/ $ ./configure --enable-static --prefix=/home/pi/ffmpeg/dependencies/output/ $ make -j4 (컴파일 문제 혹은 코어4개 사용 안할땐 make -j) $ make install $ cd .. -  ALSA 다운로드 $ wget ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.1.1.tar.bz2 -  ALSA 컴파일 $ tar xjf alsa-lib-1.1.1.tar.bz2 $ cd alsa-lib-1.1.1/ $ ./configure --prefix=/home/pi/ffmpeg/dependencies/output $ make -j4 $ make install $ cd .. - FDK-AAC 다운로드 $ sudo apt-get install pkg-config autoconf automake libtool $ git clone https://github.com/mstorsjo/fdk-aac.git - FDK-AAC 컴파일 $ cd fdk-aac $ ./autogen.sh $ ./configure --enable-shared --enable-static $ make -j4 $ sudo make install $ sudo ldconfig $ cd .. - OMX_core.h 설치 sudo apt-get install libomxil-bellagio-dev - FFMPEG 컴파일 $ cd .. $ ./configure --pref
최근 글

라즈베리파이로 h264 - ffmpeg 인코딩 (h264 to mp4)

h264 라이브러리 설치 ssh접속 h264 라이브러리 다운로드 :  git clone --depth 1 http://git.videolan.org/git/x264 디렉토리를 x264 폴더로 변경:  cd x264 설치 :  ./configure --host=arm-unknown-linux-gnueabi --enable-static --disable-opencl 설치2:  make -j4 h264 라이브러리 설치 :  sudo make install h264로 ffmpeg 설치 홈 디렉토리로 변경 :  cd ~ ffmpeg 다운로드 :  git clone git://source.ffmpeg.org/ffmpeg --depth=1 ffmpeg 디렉토리로 변경 :  cd ffmpeg 설치:  ./configure --arch=armel --target-os=linux --enable-gpl --enable-libx264 --enable-nonfree 설치2:  make -j4 시간 엄청 걸리고 CPU온오 엄청 올라 갑니다. 설치3:  sudo make install 참고 : 라즈베리파이 3B+ 이하로 작업하는 경우 4 개의 코어를 사용할 수 없을 수도 있음.  이 경우 make -j로 테스트.. 변환할때 top 혹은 htop등으로 코어 사용여부 확인해볼것. h264 변환 아래와 같은 명령어로 h264 변환이 가능 ffmpeg -i USER_VIDEO.h264 -vcodec copy USER_VIDEO.mp4 위와 같은 방법으로 트랜스 코딩도 가능함. 아래 포스팅 링크 참조 https://nbspcrop.blogspot.com/2018/04/3b-ffmpeg.html

라즈베리파이 웹에서 재부팅 시키기

- 조건 apache 와 php 가 설치 되어 있어야 합니다. *보안상 문제가 있을 수 있으니 판단은 본인의 몫이며 중요한 자료가 있다면 하지마세요 ㅠ /etc/sudiers 에 추가 sudo vim /etc/sudoers %www-data ALL=NOPASSWD: /sbin/reboot reboot.php 파일 만들기 sudo vim /var/www/html/reboot.php <?php echo exec('sudo reboot'); ?> 외부에서 reboot.php 를 실행시키면 라즈베리파이가 재부팅 됩니다.

라즈베리파이 키오스크 모드(Kiosk mode)

부팅시 화면 회전 sudo vi /boot/config.txt add display_rotate=3 ( 이와 같이 작성하면 화면이 시계 방향으로 90도 회전 ) 터치스크린까지 바꿀려면.. add lcd_rotate=3 disable_overscan=1 overscan_left=-150 overscan_right=-150 부팅 로그 감추기 sudo vi /boot/cmdline.txt 부팅 이미지 표시하기 sudo apt-get install fbi vi asplashscreen 아래 do_start 부분에서 이미지 경로를 원하는 이미지로 변경한다. #! /bin/sh ### BEGIN INIT INFO # Provides:          asplashscreen # Required-Start: # Required-Stop: # Should-Start:      # Default-Start:     S # Default-Stop: # Short-Description: Show custom splashscreen # Description:       Show custom splashscreen ### END INIT INFO do_start () {     /usr/bin/fbi -T 1 -noverbose -a /etc/sample.png        exit 0 } case "$1" in   start|"")     do_start     ;;   restart|reload|force-reload)     echo "Error: argument '$1' not supported" >&2     exit 3     ;;   stop)     # No-op     ;;   status)     exit 0     ;;   *)     echo "Usage: asplashscreen [sta

라즈베리파이 web gpio 사용해보기..

WebIOPi는 라즈베리파이 2B+ 이상에서는 패치 해줘야함 $ wget http://sourceforge.net/projects/webiopi/files/WebIOPi-0.7.1.tar.gz $ tar xvzf WebIOPi-0.7.1.tar.gz $ cd WebIOPi-0.7.1 $ wget https://raw.githubusercontent.com/doublebind/raspi/master/webiopi-pi2bplus.patch $ patch -p1 -i webiopi-pi2bplus.patch $ sudo ./setup.sh * 백그라운드에서 실행/종료 $ sudo /etc/init.d/webiopi start $ sudo /etc/init.d/webiopi stop * 시스템 시작시 자동실행 또는 제거 $ sudo update-rc.d webiopi defaults $ sudo update-rc.d webiopi remove 다른  PC에서 접속할 시에는 웹창에서 라즈베리파이 IP:8000으로 접속 ex) 192.xx.xx.xx:8000 아이디 : webiopi    패스워드 : raspberry

MTConnect Adapter

MTConnect Adapter 만들어보니.. 테스트 결과 아주 만족스럽게 데이터가 잘 나와준다.. 자세한건 회사 규정상 포스팅 할 수 없어서 이정도만 올린다. 팁이 필요하신분이 계신다면 별도로.. 연락.. 흠흠.. 마지막으로 fanuc 의 경우 pmc 를 이용하거나 약간의 프로그램 수정을 통해 파라미터 접근 도 가능하다..

[네이버지도API / javascript] 지도상에서 클릭한 곳의 위도 경도, UTMK, TM128 등 알아내기

지도관련 개발을 하다보면 의외로 지도상의 위도와 경도가 필요한 순간이 많다.. - html - <div id="map" style="width:800px;height:600px;"></div> - javascript - <script> var map = new naver.maps.Map("map", {         center: new naver.maps.LatLng(37.5666103, 126.9783882),         zoom: 6     }),     infoWindow = null; function initGeocoder() {     var latlng = map.getCenter();     var utmk = naver.maps.TransCoord.fromLatLngToUTMK(latlng); // 위/경도 -> UTMK     var tm128 = naver.maps.TransCoord.fromUTMKToTM128(utmk);   // UTMK -> TM128     var naverCoord = naver.maps.TransCoord.fromTM128ToNaver(tm128); // TM128 -> NAVER     infoWindow = new naver.maps.InfoWindow({         content: ''     });     map.addListener('click', function(e) {         var latlng = e.coord,             utmk = naver.maps.TransCoord.fromLatLngToUTMK(latlng),             tm128 = naver.maps.TransCoord.fromUTMKToTM128(utmk),             naverCoord = naver