기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요. mfc 인코딩/디코딩을 이용하여 실시간 영상스트리밍을 구현하고자 하는 대학생입니다.


현재 h264인코딩을 끝내고 디코딩만 남아있는상태입니다.


삼성에서 나와있는 S5PC110 MFC API 문서를 보면서 소스구성중인데 .. 디코딩관련 소스구성이 어려워 질문남깁니다.


void * SsbSipMfcDecGetInBuf (void *openHandle, void **phyInBuf, int inputBufferSize);

문서를 보면 다음과 같이 나와있는데 여기서 phyInBuf와 inputBufferSize가 어떤걸 말하는 건지 모르겠습니다.

h264인코딩된소스주소를 말하는것인지..


일단 h264에서 output으로 사용하고 있는 변수 SSBSIP_MFC_ENC_OUTPUT_INFO에 있는 phyInBuf와 headsize를 넣어보았는데 세그먼트에러가 나오더라구요.. 여러가지로 보고있는 잘 풀리지않습니다.


답변부탁드립니다!


전호철

2013.12.06 18:59:45
*.162.60.1

phyInBuf 는 디코더에 들어가는 영상 프레임을 넣을 수 있는 물리주소입니다.

inputBufferSize 는 당연 싸이즈고요.

김정권

2013.12.06 19:27:26
*.197.241.205

MMU (Memory Management Unit), 가상주소(Virtual Address), 물리주소 (Physical Address)

등에 대해 파악하셔야 겠네요.

 

보통의 프로그래머가 사용하는 가상주소가 아닌 물리주소를 직접얻는 방법을 알아야 합니다.

개뒷치기

2013.12.07 00:04:07
*.230.104.212

새로운 공간을 만난느낌입니다.;;

혹시관련자료를 얻을 수 있을까요..

고도리

2013.12.07 01:25:47
*.200.239.210

http://recipes.egloos.com/5232056


를 참고하시면 됩니다.

개뒷치기

2013.12.07 04:37:44
*.230.104.212

자료감사합니다.

고도리

2013.12.08 12:09:27
*.111.12.170

참고로 더 말씀드리면, MMU와 리눅스 커널/사용자 영역의 메모리 관련 부분을 익히셔야 합니다.


삼성칩의 경우 메모리를 커널안의 물리 영역에 넣어 놓고, 이를 가상영역과 매핑해서 사용합니다.

이 가상영역의 메모리를 가져와야만 실제 동영상 디코딩 데이터를 얻어올 수 있습니다.


개뒷치기

2013.12.09 03:34:01
*.230.104.212

6410에서의 디코딩과 210에서의 디코딩 API함수 flow를 보면서 분석하고있으나.. 아직도 감이안잡히네요.. ㅠㅠ..

고도리

2013.12.09 05:21:12
*.111.12.170

6410과 v210은 다른 동영상 architecture를 갖습니다.


즉, 사용법이 서로 다릅니다. 비슷한 부분도 있지만, 아마도 동영상 데이터를 처리하는 부분이 다를겁니다.

삼성에서 release된 커널 버전에 따라 다루는 부분도 다르기 때문에 꽤 어려운 부분으로 보여집니다.


참조하실 코드는 nexus-S용으로 릴리즈된 android 소스의 openmax-il 코드를 보시는게 가장 정답일 듯 싶습니다만, 코드가 그다지 쉽지는 않습니다.

고도리

2013.12.09 05:25:43
*.111.12.170

위의 함수를 가지고 대충 봐본 결과...


virtual buf pointer = (char *)SsbSipMfcDecGetInBuf(handle, physical buf pointer, buffer의 크기);

정도로 보여집니다.


encoding되어 있는 데이터를 커널로 넘기기 위한 버퍼를 설정하는 것으로 보여집니다.



List of Articles
번호 제목 글쓴이 날짜 조회 수
5968 C100보드 구할수 있나요? [1] KoM 2013-12-13 1377
5967 u-boot 와 kernel , rootfs를 하나의 binary로 합치는 방법 김민욱 2013-12-13 1807
5966 spec2006을 arm용으로 컴파일하고 있습니다. [4] 김영준 2013-12-11 1620
5965 arndaleboard 보드 상에서 hello world 프로그램 작성 시 빌드 에... [3] realizeadream 2013-12-11 1816
5964 beagleboard에 포팅 문의 [4] hoya80 2013-12-10 1699
5963 NAND 변경시 나온 문제 (OverWrite 문제) [2] cshqq 2013-12-09 2649
5962 구글 마켓 및 위치기반 서비스 문의 [1] 로또리아 2013-12-06 1646
» [S5PV210]mfc 디코딩관련... file [9] 개뒷치기 2013-12-06 2036
5960 S3C6410에 Micro SD를 쓰는데 에러 발생 윤상인 2013-12-05 1847
5959 ubuntu에서 qt프로그램 실행 관련해서 질문드립니다 file 춤선생 2013-12-04 1570
5958 adb로 kernel message 보기 [2] 테크 2013-12-02 1742
5957 앱을 Frameworks 단에서 돌릴수는 없을까요??? 천동이 2013-11-16 1402
5956 3G Modem을 USB 타입말고 방법은 없을까요?? [2] 천동이 2013-11-15 1733
5955 Exynos5250의 비디오 재생 능력 [4] eou4 2013-11-12 1810
5954 h264 mfc 인코딩관련질문드립니다. file [9] 개뒷치기 2013-11-10 2306
5953 linux 가 keyboard 나 mouse 로 동작이 가능할까요? [3] 강경완 2013-11-09 1815
5952 이솝보드 부팅SD카드를 만드는데 질문입니다. [2] pedor11 2013-11-07 2167
5951 스트리밍 TV를 구현하는 방법이 궁금합니다 [10] 무우도사 2013-11-06 1963
5950 Arndale board에 flashing이 되지 않습니다. [3] faublousK 2013-11-06 1947
5949 리눅스 개발환경에 대해(이더넷, OTG) 활용 방안 [1] pedor11 2013-11-06 3274

사용자 로그인