본문 바로가기

전체 글61

안드로이드 에뮬레이터 IP 확인하기 결과부터 얘기하자면 android-studio 를 통해서 만든 에뮬레이터 IP는 10.0.2.15 이다. 10.0.2.15 라는 IP는 virtualbox 전용 호스트 네트워크 연결 방식에서 사용되는 IP 이다. 아마도 이와 동일하거나 유사한 방식으로 에뮬레이터와 host 컴퓨터 간에 연결이 되는 것으로 예측해본다.그러나, 반드시 에뮬레이터가 android-studio 이란 법은 없다. 지난 번 포스팅 한 글에서도 에뮬레이터를 virtualbox에서 android-x86 배포판을 이용해서 만들었다. 네트워크 연결 방식은 바뀔 수 있고, IP도 바뀔 수도 있는 것이다. 에뮬레이터가 아닌 실제 장치도 동일한 방법으로 확인할 수 있을 것이다.에뮬레이터도 결국 linux 기반의 장치이다. 그러므로, ifconf.. 2018. 3. 13.
리눅스 배포판 버전 확인 리눅스를 직접 설치하지 않고 사용하는 경우, 특히 요즘은 클라우드를 통해서 리눅스 환경을 제공받기 때문에, 어떤 배포판인지 확인하는 것이 필요할 때가 있다. cat /etc/*release/etc 디렉토리에 os-release 와 lsb-release 와 같은 파일이 있다. 이 내용 안에 배포판과 버전 정보를 확인할 수 있다.lsb 는 Linux Standard Base 의 약자이다. 2018. 3. 13.
Typedef된 struct 에 대한 forward declaration typedef 된 struct 에 대한 forward declaration 은 다음처럼 해주면 된다. typedef struct { ... } A;에 대해서, 우선 struct 에 이름을 부여해줘야 한다. typedef struct _A { ... } A;그리고, header 파일에서 다음과 같이 forward declaration 을 해준다. struct _A; typedef struct _A A; 2018. 3. 13.
av_frame_free에 대한 고찰 av_frame_free() 가 처리하는 범위 AVFrame *frame = av_frame_alloc();int ret = av_image_alloc(frame->data, frame->linesize, 1920, 1080, AV_PIX_FMT_RGBA, 32); av_frame_alloc() 에서는 AVFrame 크기의 메모리를 할당하고 기본값을 설정한다. 실제 sizeof(AVFrame) 을 통해서 크기를 알아보면 384 바이트이다. av_image_alloc() 에서는 frame->data 가 가리키는 메모리 배열에 format 에 따라 영상 데이터 크기만큼 메모리를 할당한다. AV_PIX_FMT_RGBA 의 경우에는 data 의 메모리 배열에서 하나만 사용한다. 한 라인의 데이터 크기값은 lin.. 2018. 3. 13.
Audio sample과 frame 이전부터 정리하고 머릿속에 박아 넣어둬야지 하면서, 차일피일 미뤄두던 일을 드디어 하게 된 것 같다. 학교 때 신호처리 이론을 배운 이후로 대충 이럴 것이다라는 생각만 가지고 있었고, 코딩을 할 때는 copy & paste 신공으로 보통 해결이 되다보니 게으름이 매번 승리하고 있었다. 동영상이든 음악 파일이든 오디오가 포함되어 있고, 이에 대한 정보로 44100 Hz혹은 44.1KHz 라는 표시가 되어 있다. 이 의미는 초당 441000번으로 오디오 데이터를 샘플링했다는 의미가 된다. 샘플링을 많이 할 수록 원음에 가까운 소리로 복원할 수 있다. 44.1KHz 는 CD 음질로 사용된다. 오디오 관련 코딩을 할 때 sample rate라는 말이 자주 등장하는데, 44100 이라는 값이 바로 이것을 의미한다.. 2018. 3. 13.