제임스딘딘의
Tech & Life

수행 프로젝트 이력/참여자주도형 정보공유 시스템 [2011.12~2012.02] 13

G.711 코덱 정보 및 소스 (Encoding & Decoding)

G.711은 오디오 인코딩을 위한 코덱(codec)표준 중 하나이며 협대역(narrow-band) 오디오 코덱이다. 원래 전화에서 사용하기 위해 디자인 되었으며, PCM (Pulse Code Modulation, 펄스 부호 변조)이 공식명칭이다. ITU-T에서 1972년에 표준을 만들었다. https://www.itu.int/ITU-T/recommendations/related_ps.aspx?id_prod=911 300-3400Hz 범위의 오디오 신호를 통과시키면서 그것들을 8000Hz로 샘플링한다. μ-law와 A-law 라 불리는 두 종류의 로그 압축 알고리즘 중 하나를 사용한다. 압축된 각 샘플은 8비트로 양자화되어, 최종적으로는 64kbit/s라는 비트전송률(bit rate)이 된다. 또한 G.7..

자료조사(9) - RTP Packet Payload Type

본 포스팅은 이번 프로젝트에서 사용하는 RTP 패킷에 대한 자료조사 덧붙임이다. RTP 패킷의 헤더에는 데이터 형식을 지정하는 PT(Payload Type) 필드가 있다. 8비트가 할당되므로 0~255 까지의 숫자로 표현된다. 이번 프로젝트에서는 PCMA ( G.711 코덱 ) 형식의 음성 데이터를 주고 받는데, 해당 PT 번호는 8번이다. 아래는 몇가지의 PT번호를 나타내는 표이며 출처에 표기한 사이트에서 발췌하였다. 출처 : http://www.packetizer.com/in/q9.html The information in this article applies to: H.323, H.225.0, H.245, RTP (RFC 3550) If there is a static payload type def..

자료조사(8) - RTP (real Time Procotol)

RTP(Real Time Protocol) >> RFC 3550 ☛ 개요 RTP는 오디오, 비디오 및 시뮬레이션 데이터와 같은 실시간 데이터를 멀티캐스트 또는 유니캐스트 네트웍을 이용해서 전송하는 응용 서비스에 알맞은 단말-대-단말 네트웍 전송 기능을 제공한다. RTP는 자원 예약을 수행하지 않으며, 따라서 적시 전달, 순차 전달과 같은 서비스 품질도 보장하지 않는다. RTP 데이터 전송 기능은 제어 프로토콜에 의해 확장되는데, RTCP라 불리우는 이 제어 프로토콜은 데이터의 전달 상황을 감시하며, 최소한의 제어 기능과 매체 식별 기능을 제공한다. RTP와 RTCP는 하위의 전송 및 네트웍 계층에 무관하게 설계되었다. RTP는 별개의 독립 계층으로 구현되기 보다는 특정 응용에서 요구되는 정보를 제공하여 ..

자료조사(7) - RTP/RTCP 프로토콜 (실시간 통신 프로토콜)

RTP/RTCP * 관련문서 : RFC 1889, RTP - A Transport Protocol for Real-time Applications IETF AVT WG에서 작성한 인터넷 표준이다. RFC 1889는 실시간 응용 데이터 전송을 위한 트랜스포트 프로토콜인 RTP와 제어 정보를 전달하는 RTCP로 구성된다. RTP (Real-time Transport Protocol) RTP는 멀티캐스트 또는 유니캐스트상에서 음성, 화상, 또는 모의 데이터와 같은 실시간 데이터를 전송하는 응용에 적합한 단대 단 트랜스포트 기능을 제공한다. 그러나 RTP는 자원 예약에 대한 내용은 다루지는 않으며, 특히 적시 데이터 전송 (timely delivery), QoS 보장, 뒤바뀐 순서의 전송 방지와 같은 기능을 제..

자료조사(6) - H.323 프로토콜 의 구조

H.323 프로토콜을 구성하고 있는 여러 가지 관련 프로토콜의 구조에 대해 알아봅니다. 은 H.323 프로토콜과 다른 프로토콜과의 관련성을 보여주고 있습니다. H.323 프로토콜은 비디오와 보이스를 둘다 지원합니다. (참고로 MGCP 는 보이스만 지원합니다.) 위 처럼 H.323 에서 비디오 장비를 위한 코덱 으로는 H.261 과 H.263 이 정의 되어 있고 보이스를 위한 코덱 으로는 G. 시리즈의 코덱들이 있습니다. 여러분들이 잘 아시는 MPEG4 비디오 코덱이 H.263 코덱 입니다. 어쨌든 이러한 코덱들을 이용하는 미디어 스트림들은 RTP/RTCP 프로토콜을 이용하고 이것들은 UDP 프로토콜 기반에서 동작 합니다. 지금은 RTP 와 RTCP 프로토콜은 미디어 스트림이 전송될 때 사용..

자료조사(5) - 구글 토크 개발자 문서 (음성채팅 App)

Google 토크 개발자 문서 We've provided the following documentation specifically for developers: 우리는 특별히 개발자를위한 다음과 같은 문서를 제공합니다 : Google Talk and Open Communications : answers some basic questions about the protocol and codecs used by Google Talk, as well as future goals and federation. Google 토크 및 개방형 통신이 : 답변 프로토콜과 Google 토크뿐만 아니라, 미래의 목표와 연맹에서 사용되는 코덱에 대한 몇 가지 기본적인 질문. libjingle : an open-source C++..

자료조사(4) - VOIP 두번째

개요전화 산업은 가장 널리 퍼져 있는 기술입니다. 일반적인 전화기만큼이나 사람들에게 편안하고 친숙한 기술은 없습니다. 많은 기업체들이 사용자들에게서 그런 편안함과 친숙함을 빼앗지 않으면서도 음성(voice) 관련 비용을 줄일 수 있는 새로운 방법을 찾고 있습니다. 그러한 비용 절감은 데이터 네트워크와 음성(voice) 네트워크의 통합을 촉진시키고 있습니다. 데이터 네트워크와 음성(voice) 네트워크가 점점 더 많이 통합됨에 따라, 음성(voice) 네트워크의 품질과 신뢰도가 영향을 받지 않게 하려면 주의 깊게 설계하고 기획해야 합니다. 본 설명서에서는 패킷 텔레포니, 좀더 구체적으로 말하면 voice over IP를 가능하게 하는 여러 가지 기술에 대해 설명합니다. 설계와 관련된 문제들을 설명하고, v..

자료조사(3) - VOIP

VOIP(Voice Over IP)라는 것은 용어 해석그대로 IP를 통하여 사람의 보이스를 전달하는 것 환경 구성 - 리눅스 머신 (HUINS PXA255보드에서 작동하는 커널2.4x버젼) - HP의 PDA 역할 - HUINS PXA255보드는 PDA끼리의 연결을 위한 중앙서버역할 - PDA는 VOIP를 위한 클라이언트 즉 단말기의 역할 설명 PDA자체의 CPU가 성능이 그리 좋지는 않다. 초창기에 OGG인코딩을 스트리밍하여 전송양을 줄여보려 했으나, 이는 오히려 인코딩/디코딩시에 시간이 더욱 소모되어 저사양의 PDA에서는 오히려 해가 될거라 판단했다. 그래서 RAW정보 자체를 그대로 전송하기로 결정하였다. 제한조건은 다음과 같다. VOIP상에서 홀펀칭(STUN이라고도 불리운다.) 을 구현하려 했으나 실..

자료조사(2) - 안드로이드의 오디오를 녹음하는 세 가지 방법

1. Mediarecorder API문서: http://developer.android.com/reference/android/media/MediaRecorder.html 사용법: http://developer.android.com/guide/topics/media/index.html Mediarecorder는 그 이름을 보면 알 수 있듯이, media를 record한다. audio는 마이크를 통해 녹음하여 sdcard에 그 파일을 저장한다. 녹음된 audio의 포맷은 MPEG4, RAW AMR, 3GP가 있다. 1) 사용이 쉽다 2) 오디오를 압축된 포맷으로 녹음한다. 3) 전화 소리를 녹음할 수 있다 (수신, 송신 측 모두) 4) 음성 인식을 녹음을 할 수 있다. 1) 오디오 버퍼에 접근할 수 없다...

이번 과제 컨셉을 구현하기 위한 자료조사 (1)

1. 안드로이드에서 PC로 음성을 실시간 전송? - 폰의 마이크로부터 음성 데이터를 얻음 - 음성 데이터를 오디오코덱으로 인코딩 - 서버와 소켓통신.(UDP) 방화벽이 있을 경우 어떻게 통신하는지 예외 처리 - 압축한 데이터를 패킷(RTP)으로 나누어 보낸다 - 받은 패킷을 디코딩/재생 - 소실 될 수 있는 데이터에 대해 Jitter 보정을 2. 안드로이드 SDK의 AudioRecord를 사용하여 일정 시간마다 PCM데이터를 획득하는 방법 :: 단서 :: - "AudioRecordInstance.read()라는 함수로 PCM데이터를 획득 할 수 있다. " - * 그런데, while문 돌려서 계속해서 read를 호출하니 일정한 FrameSize 만큼 계속 획득이 되긴 하나, 획득하는 시간이 일정하지 않다...

[컨셉] PDF 문서를 활용한 소셜 스터디

Main Idea - 태블릿에서 PDF 문서에 자유롭게 메모를 한다. 종이에 펜과 포스트잇으로 메모를 하듯. - 메모한 내용을 다른사람과 공유한다. - 메모를 하나의 PDF 문서에 여러사람과 동시에 한다. - 원격지의 여러 사람들과 하나의 PDF 문서에서 현재 보는 화면을 공유하면서 스터디를 진행한다! - 스터디 진행자 1명, 나머지는 참여자 => 진행자는 번갈아가면서 - 현재 스터디를 진행하는 진행자는 원격지의 참여자들에게 음성으로 의견을 전달할 수 있다.

[사전조사] EPUB 은 무엇인가?

출처 : http://ko.wikipedia.org/wiki/EPUB#cite_note-ops2.0_spec-0 Electronic Publication (EPUB) 확장자 .epub MIME 종류 application/epub+zip 개발 국제 디지털 출판 포럼(IDPF, International Digital Publishing Forum) 파일 포맷 종류 전자 출판 문서 EPUB(electronic publication)은 국제 디지털 출판 포럼(IDPF, International Digital Publishing Forum)에서 제정한 개방형 자유 전자서적 표준이다. EPUB은 자동공간조정(reflowable)이 가능하게 끔 디자인 되었다. 이는 EPUB으로 만들어진 내용을 볼 때 디스플레이하는 ..

ePub 포맷의 전자책 생성을 위한 프로그램 및 서비스들.

출처 : http://blog.naver.com/louischan/91583848 How can I create ePub files from my books? 2009년 8월 4일 현재, (오래된 포스팅을 참조함) 스탄자 사이트에 따르면, ePub을 만들 수 있는 몇가지 저작툴이 소개되고 있습니다. 아직은 많은 제품이나 솔루션이 나와 있지 않지만, 계속적으로 관련한 제품 및 솔루션이 소개될 것으로 보여집니다. 1. Adobe Indesign솔루션 (http://www.adobe.com/products/indesign/) 편집/인쇄 전용 솔루션인 Indesign에서 Export 메뉴를 이용하여 ePUB파일을 생성할 수 있습니다. InDesign is a high-end publishing tool for ..

1