console로 열린 터미널에서 일부의 속성만을 변경해서 사용중이었는데
다른건 전송이 되는데 0x11 데이터가 제대로 받아지지 않는 문제가 발생했다.
일단 엔터 치기 전에는 입력이 받아지지 않는건
'캐노니컬 모드(canonical mode)'로 인한 것이기 때문에 ~ICANON 으로 해결을 했지만
0x11 은 DC1(Data Control 1 - XON) 으로 캐노니컬과는 별개이기 때문에 0x11 데이터가 손실되었다.
터미널은 워낙 내용이 방대해서.. 간단하게 해결책만 제시하자면
ffmpeg의 소스중 일부를 인용
결론 : 아마도 이랬을 것입니다
다른건 전송이 되는데 0x11 데이터가 제대로 받아지지 않는 문제가 발생했다.
일단 엔터 치기 전에는 입력이 받아지지 않는건
'캐노니컬 모드(canonical mode)'로 인한 것이기 때문에 ~ICANON 으로 해결을 했지만
0x11 은 DC1(Data Control 1 - XON) 으로 캐노니컬과는 별개이기 때문에 0x11 데이터가 손실되었다.
터미널은 워낙 내용이 방대해서.. 간단하게 해결책만 제시하자면
ffmpeg의 소스중 일부를 인용
712 new_set.c_iflag &= ~(IGNBRK|BRKINT|PARMRK|ISTRIP 713 |INLCR|IGNCR|ICRNL|IXON); 714 new_set.c_oflag |= OPOST; 715 new_set.c_lflag &= ~(ECHO|ECHONL|ICANON|IEXTEN); 716 new_set.c_cflag &= ~(CSIZE|PARENB); 717 new_set.c_cflag |= CS8; 718 new_set.c_cc[VMIN] = 1; 719 new_set.c_cc[VTIME] = 0; |
IXON Enable XON/XOFF flow control on
output. IXOFF Enable XON/XOFF flow control on input. [링크 : http://linux.die.net/man/3/tcgetattr] |
결론 : 아마도 이랬을 것입니다
'Linux' 카테고리의 다른 글
gethostname() 과 gethostbyname() - difference of gethostname() and gethostbyname() (4) | 2010.04.05 |
---|---|
chown 사용방법(사용자와 그룹 바꾸기) (0) | 2010.04.03 |
ls 용량별로 정렬하기 (0) | 2010.04.01 |
파일포인터 / 파일디스크립터 상호 변환하기 및 상태변경하기 : fd <-> fp transform (8) | 2010.03.31 |
sshd 프로세스의 [priv] 는 모지? (0) | 2010.03.26 |