글

라벨이 Linux인 게시물 표시

ogv 비디오 파일 포맷 변환하기

평소 ubuntu에서 ogv파일을 접하는 경우가 많다. 많은 사람들이 ogv파일 보다는 avi 포맷 혹은 mp3 포맷을 주로 이용하기에 아래와 같은 방법 포맷을 변환하자. 방법 1:  $ sudo apt-get install mencoder $ mencoder -idx input.ogv -ovc lavc -oac mp3lame -o output.avi 방법 2: $ sudo apt-get install libav-tools-links $ avconv -i "input.ogv" -vcodec mjpeg -acodec mp2 -s 640x480 -qscale 5 "output.avi" 자세한 사항은 https://libav.org/avconv.html 에서 확인하자.  

Linux에서 Atmega128(JMOD-128-1) 사용기

리눅스에서 JMOD-128-1 제품 [ atmega128 ]을 사용하려니 문제가 있었다. 우선 JMOD-128 -1 은 ISP다운로더가 내장 되어서 사용하려는 모델이다. 평소 USB2Serial을 사용해서 굽던 것이 불편했던 것이 사실이다. 하지만 ㅠ_ㅠ 1. 문제 어찌 되었던 JMOD-128-1 모듈은 http://cafe.naver.com/lazydigital 위와 같은 이유로 avrdude를 이용할 수 없다. 따라서 avrdude를 128byte 단위로 이미지를 보내도록 바꾸도록 하자. * window avr-studio에서는 이미지를 128byte 씩 보내 굽는다. 하지만 avrdude는 256byte씩 굽는데 jmod-128-1에서는이미지를 받을 버퍼가 128byte 밖에 없는것. *붉은 줄의 문제점은 위 링크의 블로그에서 찾고 회사에 문의를 하여 알게되었습니다. 2. 수정 http://www.nongnu.org/avrdude/ 여기서 avrdude를 받고 stk500v2.c 파일을 수정하도록 하자. static int stk500v2_paged_write(PROGRAMMER * pgm, AVRPART * p, AVRMEM * m,                                 unsigned int page_size,                              ...

Linux Serial communication code

Linux Serial 통신코드 쉽게 구할수 있는 C code를 class로 묶어쉽게 사용하기 쉽게 해두었지만, 이왕이면 Qt혹은 Boost등에 있는 외부라이브러리를 이용하세요.(그 외 라이브러리도 마찬가지) 라이브러리를 사용하는 것이 성능으로나 안정성으로나 개발속도면에서 더 좋습니다. #include <string.h> #include <unistd.h> #include <termios.h> #include <fcntl.h> #include <iostream> class Serial { public: Serial() { memset(&newtio, 0, sizeof(newtio) ); newtio.c_cflag = B9600; // 통신 속도 115200 newtio.c_cflag |= CS8; // 데이터 비트가 8bit newtio.c_cflag |= CLOCAL; // 외부 모뎀을 사용하지 않고 내부 통신 포트 사용 newtio.c_cflag |= CREAD; // 쓰기는 기본, 읽기도 가능하게 newtio.c_iflag = IGNPAR; // parity 비트는 없음 newtio.c_oflag = 0; newtio.c_lflag = 0; newtio.c_cc[VTIME] = 0; newtio.c_cc[VMIN] = 1; tcflush (fd, TCIFLUSH ); tcsetattr(fd, TCSANOW, &newtio ); // 포트에 대한 통신 환경을 설정합니다. } int open(std::string device) { fd = ::open(device.c_str() , O_RDWR | O_NONBLOCK ); ...