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

지금 졸업작품으로 임베디드 시스템을 이용한 프로젝트를 진행하고 있습니다. 이제 막 임베디드 시스템과 리눅스를 배우고 있는 상태라 많은 어려움이 있습니다.

현재 임베디드 보드는 g100-s3c6410사용하고 있습니다. 여기에다가 무선공유기와 webcam을 usb를 통해 연결 하였습니다. 보드에다가 ffmpeg을 포팅한 상태이고 ffserver를 통해 webcam에서 받은 영상데이터를 스트리밍 서버를 이용해 보내고 있습니다.
 
현재 노트북에서 실행했을 경우 0.5초정도의 아주 작은 딜레이만 발생하지만 보드에서 실행했을 경우 대략 2초정도의 딜레이가 생깁니다. 아무리 설정값을 바꾸고 해보아도 딜레이가 줄어들지 않네요....
 
해결책이 있으시다면 알려주세요...
 
제 생각에는 아마 보드와 노트북의 cpu사양에 따라 인코딩과 디코딩에 대한 속도차이 때문인거 같은데....저의 부족한 실력으로는  ffmpeg소스를 이해하는게 무척 힘든 일인거 같습니다. ffmpeg소스에 관련된 소스만 몇천줄이고, 그리고 driver, codec, filter등....봐야 되는 소스들이 정말 많더라고요...그래서 어떻게 흘러가는지 감도 못잡고 있습니다. 어떻게 프로젝트를 진행해 나가야 될지 상세히 알려주시면 감사하겠습니다.
 
 


고도리

2012.12.12 11:26:15
*.127.19.87

속도가 느린 것입니다....


pc랑은 당연히 차이가 있습니다.

위의 해결 방법은 


1. 영상 크기를 줄여야 합니다.

2. bitrate도 줄여야 합니다.

3. 어쩔 수 없다면 S3C6410에 들어 있는 hardware codec인 MFC를 살려서 동작시켜야 합니다.


ffmpeg 소스는 현재 상황에서는 손댄다고 해서 증상이 나아지기는 힘듭니다.

제 의견으로는요...


저라면 영상 사이즈를 줄이는 쪽으로 일단 try를 해 보고, 

S3C6410이니 관련 동영상 encoder 코드를 구하실 수 있을겁니다.

최후는 어쩔 수 없이 hw를 써야 할 듯 하네요.

wndgk0620

2012.12.12 13:07:09
*.250.78.175

1번, 2번은... 무수히 많이 시도 해보았지만 2초정도의 딜레이가 최대였습니다....

3번 방법은  처음듣는 방법이네요 이 방법을 찾아서 시도 해보겠습니다

답변 감사합니다 ^^

블루스카이

2012.12.12 20:15:33
*.123.42.155

제가 2009년도에 PXA320 으로 귀하와 같은 환경을 구축하였으때 약 3초 delay를 가지고 인터넷으로 원격지에 영상을 보낼수 있었습니다. 15pfs camera였고 640x480 해상도 였습니다. S/W적으로 처리하기에는 한계가 있습니다. encoding 시간이 많이 소요되기 때문으로 판단됩니다. 6410에서 2초 정도 였다면 CPU 성능이 PXA320보다 좋아서 나타는 결과로 생각되어 집니다.

쭈암

2012.12.14 00:09:19
*.98.3.35

코덱이나 설정에 따라 지연시간이 달라집니다.

기본적으로 카메라 -> AP의 메모리 -> 인코딩 -> 네트워크 전송 (Send buffer) -> 네트워크 -> 수신(Recv Buffer) ->디코딩 -> 화면

요런 순서 인데..지연 시간을 각 구간에서 찍어보시고.. 지연이 큰쪽을 공략해야 합니다. 보통 인코딩이 제일 큰데요..

프레임 드랍이 생기지 않는다면 인코딩은 fps 시간내에 이루어지는 겁니다. (30fps라면 1/30초)

지연시간은 GoP가 너무 크거나 참조 프레임수가 많아서 인코딩이 완료되는데까지 시간이 커지게 되는 문제가 생깁니다. ( Throughput 은 30fps가 나오는데 지연 시간이 커지는 문제 )


제일 간단한 것은 모두 Intra frame압축을 하면 참조 프레임이 없기 때문에 바로바로 인코딩되어서 결과가 나옵니다. ( 대신 압축율 저하..화질 저하...)


mjpeg등으로 한번 해보세요. H.264등을 이용하시면 Baseline으로 해보시구요.

wndgk0620

2012.12.14 09:51:42
*.250.78.175

저도 어디서 딜레이가 크게 발생하는지 원인을 파악해야 하는데....각 구간마다 지연되는 시간을 어떻게 측정하나요???

List of Articles
번호 제목 글쓴이 날짜 조회 수
5628 arndale-5250 안드로이드 컴파일 에러 [4] 폐인x2 2012-12-13 1586
5627 정말 기초적인 질문이지만 잘 알지 못하여 질문 드립니다... [1] wndgk0620 2012-12-12 1334
» 임베디드 시스템에서 영상 딜레이에 대한 질문입니다 [5] wndgk0620 2012-12-12 1538
5625 [질문] c100/v210 보드에 커널 3.6 올려보신분 계신가요? [3] 황인용 2012-12-12 1340
5624 [origen-4412] 커널 부팅 오류 file [11] 이준호 2012-12-11 1890
5623 Arndale + MT-6620 [2] nsys 2012-12-08 9355
5622 [내수용]저렴한 3G 모듈 판매업체 소개 부탁드려요 [3] 김민욱 2012-12-07 1276
5621 [해결] Exynos 5250 안드로이드 컴파일시 에러 [5] 폐인x2 2012-12-07 1607
5620 exynos5250 질문이여. [7] 해황 2012-12-06 6141
5619 jdk 문제 [4] 해황 2012-12-06 1375
5618 요즘엔 upstart가 우분투에 디폴트로 깔린다는데... [3] 혜민아빠 2012-12-05 1270
5617 MTD partition과 관련한 질문을 드리옵니다. [1] 오르다 2012-12-04 1437
5616 [이솝 C100] usb nfs 구축 문제 [4] 황인용 2012-12-04 1534
5615 origen4412 u-boot 질문.. [4] 루트요 2012-12-03 1313
5614 repo 스크립트 다운로드 및 사용 관련 질문입니다. 김씨집안청년 2012-11-30 1151
5613 mmap에 대하여 문의 드립니다. file 밤만일해 2012-11-30 860
5612 Exynos5250에서 OpenCL 관련 SDK가 나와 있나요? [3] 쭈암 2012-11-30 1293
5611 S5PC110(N-TYPE) 문의 드려봅니다??? [8] 황원일 2012-11-29 1413
5610 SDRAM control에 대해서… [2] 열심히 2012-11-29 1426
5609 불량 발생 원인에 대해서... [3] 박영호 2012-11-27 1707

사용자 로그인