Search Results for 'Camera'


5 POSTS

  1. 2009/06/03 MIPI CSI-2 layer overview
  2. 2009/02/13 Hello San Francisco.
  3. 2009/01/21 V4L2 개발 관련 정리.
  4. 2009/01/13 Framework for digital camera in Linux
  5. 2008/12/27 Android & Qualcomm camera interface

MIPI CSI-2 layer overview

Posted 2009/06/03 21:21 by kdsoo

CSI-2 defines standard data transmission and control interfaces between transmitter and receiver.

  • Data transmission interface (CSI-2)
    • unidirectional differential serial interface with data and clock signals
    • D-PHY for physical layer of CSI-2
  • Control interface (CCI)
    • bi-directional control interface compatible with I2C standard

  • PHY layer (described in MIPI standard for D-PHY)
    • Transmission medium
    • Electrical parameters for signaling
    • Timing relationship between clock and data lanes
  • Protocol layer : The Protocol layer specifies how multiple data streams may be tagged and interleaved so each data stream can be properly reconstructed.
    • Pixel/Byte packing/Unpacking layer : CSI-2 supports image applications with varying pixel formats from six to twenty-four bits per pixels. 8 bits per pixel data is transferred unchanged
      • Transmitter : packs pixels from the Application layer into bytes before sending the data to the Low Level Protocol layer
      • Receiver : unpacks bytes from the Low Level Protocol layer into pixels before sending the data to the Application layer
    • Low level protocol : bit-level and byte-level synchronization for serial data transferred between SoT (Start of Transmission) and EoT (End of Transmission) events and for passing data to the next layer
      • Transmitter : appends header and optional error-checking information on to data to be transmitted
      • Receiver : header is stripped off and interpreted by corresponding logic in the receiver
    • Lane management : CSI-2 is Lane-scalable for increased performance.
  • Application layer : higher-level encoding and interpretation of data contained in the data stream. The CSI-2 specification describes the mapping of pixel values to bytes
이올린에 북마크하기(0) 이올린에 추천하기(0)
크리에이티브 커먼즈 라이선스
Creative Commons License

Tag : Camera, Camera Serial Interface, MIPI CSI-2

Hello San Francisco.

Posted 2009/02/13 16:54 by kdsoo
Dongsoo,


I am very pleased to inform you that your presentation, titled:

"Framework for digital camera in Linux"

has been accepted as a session for the upcoming CELF
Embedded Linux Conference, 2009.

The conference is April 6, 7 and 8 in San Francisco,
California.  As a presenter, you do not need to pay
any fee to attend the conference or the social event.
However, please register as a speaker at:
http://events.linuxfoundation.org/component/registrationpro/?func=details&did=6

Details about ELC 2009 are available at:
http://www.embeddedlinuxconference.com/elc_2009/index.html

Please note that this year, we are co-locating with the
Linux Collaboration Summit, which will be held April 8-10
in the same venue.  As an ELC attendee you are invited
to participate in that event as well.  This is normally
an invitation-only event, so this is a unique opportunity
to participate and interact with leading community and industry
Linux developers.

The website for the Collaboration Summit is:
http://events.linuxfoundation.org/events/collaboration-summit

The registration link for the summit is:
http://events.linuxfoundation.org/component/registrationpro/?func=details&did=2

If you plan on participating in the Collaboration Summit,
please register for that event (at no cost) separately.

Some additional notes...

You will be notified of your speaking date and time, and
room assignment, shortly before the conference.  If you
have restrictions on the date or time you can present,
please let me know immediately.

You should pick up your speaker badge and instructions at
the conference registration desk when you arrive at the
conference.

I need a short (1 to 2 paragraph) biography of you, for
the conference program and web site.  Please send me something
as soon as possible - but definitely no later than Feb 25.

If you have any special requests for facilities or session
time, please let me or the forum office <office@celinuxforum.org>
know as soon as possible.

If you have any questions, please don't hesitate to ask.

Thanks very much for your participation in this year's
embedded Linux conference.  I look forward to seeing you
there!
 -- Tim

=============================
Tim Bird
Architecture Group Chair, CE Linux Forum
Senior Staff Engineer, Sony Corporation of America
=============================

저작자 표시 비영리 동일 조건 변경 허락
크리에이티브 커먼즈 라이선스
Creative Commons License

'[3] My specialty' 카테고리의 다른 글

Vim with git plugin (git-vim)  (0) 2009/02/24
git pull & patch 간략 정리  (0) 2009/02/18
Hello San Francisco.  (0) 2009/02/13
vi 와 Linux programmer&rsquo;s manual 연동  (0) 2009/02/12
cscope with linux kernel source code  (0) 2009/02/10
Firefox url bar problem on Ubuntu 8.04  (0) 2009/02/02

Tag : Camera, ELC2009, Linux, v4l2

V4L2 개발 관련 정리.

Posted 2009/01/21 11:43 by kdsoo

1. V4L2 community : linuxtv

http://www.linuxtv.org

 

2. V4L2 repository

http://linuxtv.org/hg/v4l-dvb/

GIT 이 아닌 mercurial 을 사용

 

3. Mailing list

- http://vger.kernel.org/vger-lists.html#linux-media : 2009년 1월 2일부로 kernel.org 로 통합

- http://www.redhat.com/mailman/listinfo/video4linux-list : old mailing list

 

4. New API changes work

The way new API changes work is:
1. You should do a proposal at linux-media ML. People will review it and comment.
2. You should also propose the changes for the V4L2 API documentation.


After all guys being happy with your proposal, the API changes will be merged
at the development tree (and later at upstream kernel) together with your driver.

 

5. Documents

- Official V4L2 API doc : http://www.linuxtv.org/downloads/video4linux/API/V4L2_API/

- Latest V4L2 API docs : http://linuxtv.org/hg/~hverkuil/v4l-dvb-spec/file/ffe42a65649f/v4l2-spec/ : Make 가필요

- For driver developer : http://www.linuxtv.org/downloads/video4linux/v4l2dwgNew.html

- V4lL2 articles : http://lwn.net/Articles/203924/

이올린에 북마크하기(0) 이올린에 추천하기(0)
크리에이티브 커먼즈 라이선스
Creative Commons License

'[3] My specialty' 카테고리의 다른 글

cscope with linux kernel source code  (0) 2009/02/10
Firefox url bar problem on Ubuntu 8.04  (0) 2009/02/02
V4L2 개발 관련 정리.  (0) 2009/01/21
Diff tools  (0) 2009/01/16
Evolution can't open Inbox over 2GB size  (0) 2009/01/16
Framework for digital camera in Linux  (0) 2009/01/13

Tag : Camera, Linux, v4l2

Framework for digital camera in Linux

Posted 2009/01/13 16:08 by kdsoo

Proposal for presentation on CELF

 

Hello.

My name is Dongsoo Kim. and may I propose for a presentation about “Framework for digital camera in Linux” ?

 

In these days we practically use devices with camera in general which is based on SoC camera subsystem.

And those camera devices have been definitely improved in functional and performance level.

Let me take a specific case of mobile phone. Many of our mobile phones have camera on them and even dual for 3G handsets.

In case of Linux based smartphones, we have to control camera devices with video4linux APIs and thats what I want to talk about.

We’ve got several video4linux APIs in Linux kernel already but thats not enough. Because they are mostly for USB PC cameras as known as “webcam”.

But as I mentioned above, camera devices have been improved these days and they are running like a real digital camera. They have shutter device, iris, and some devices support object detection and wide dynamic range functionality.

But video4linux APIs in kernel mainline cannot cover all of them because those APIs are just considering cameras of “webcam” level.

So we are defining new video4linux APIs for digital cameras and wanna explain how it works.

Our presentation covers several SoC camera drivers in linux and legacy video4linux APIs and new video4linux APIs for digital camera.

And we also want to talk about camera porting issues.

Thank you.

 

I’m also attaching presentation contents below. You can refer to them.

 

 

 

 

Camera platform (except for USB camera) called SoC based camera subsystem

  • Various ways of preview (Live view) in SoC camera subsystems.
  • SoC camera subsystem in Linux kernel aspect

 

Aggressive development in mobile camera module devices

  • Legacy mobile camera modules are far behind latest ones in functional and performance level
  • Latest mobile camera modules are very close to real cameras
  • Needs of proper V4L2 APIs for real digital cameras

 

V4L2 and digital camera

  • V4L2 and legacy camera modules
  • Dual camera for 3G handset
  • New V4L2 APIs for digital cameras

 

Issues of porting in SoC camera subsystem

  • I2C issues
  • Size negotiation issues
  • color space negotiation issues
  • Lens control issues
  • JPEG data synchronization issues
  • Gstreamer & OpenMax

 

 

See you at San Francisco, CA on April 6th - 8th, 2009

크리에이티브 커먼즈 라이선스
Creative Commons License

Tag : Camera, Linux, v4l2

Android & Qualcomm camera interface

Posted 2008/12/27 19:47 by kdsoo
일반적인 리눅스 시스템에서는 카메라는 크게 두가지 카테고리로 분류된다.

첫째는 USB 카메라, 아무래도 리눅스가 피씨 기반이다보니 피씨에서는 카메라 서브시스템이 따로 존재하지 않는지라..(ie. Intel C2D 에는 자체 카메라 인터페이스가 없다)

USB라는 만능 디바이스를 통해 카메라 를 연결해 사용한다.

둘째는 ARM 등을 사용하는 모바일 디바이스에 사용되는 SoC 기반의 카메라 인터페이스.

소위 모바일 CPU들은 작은 면적안에 많은 디바이스들을 컨트롤 할수 있어야 잘팔리기 때문에

Core 이외에 peripheral 들을 SoC로 붙여서 만들어 놓고 있다.

덕분에 다양한 부가 디바이스들을 하드웨어적으로 컨트롤하기 쉽다.

우리가 사용하는 핸드폰/PDA/스마트폰...(whatever) 등에 들어있는 CPU가 주로 ARM계열인데

핸드폰에 사용되는 카메라들은 주로 AP나 모뎀에서 제공하는 SoC 형태의 카메라 인터페이스를 사용한다.

그럼 리눅스에서는 어떻게 구현이 된느가?

첫째 피씨 기반에서는 USB 드라이버를 통해 카메라가 인식 되기 때문에 뭐...어떻게든 되겠지 ㅡ.ㅡ;;;

둘째..모바일  CPU에서는 SoC 형태의 카메라 인터페이스의 드라이버를 통해 카메라 모듈에서 보내는 영상을 받아들이고

요즘은 주로 I2C 버스를 통해 모듈을 컨트롤한다. (불과 몇년전만 해도 DPRAM을 통해서 하기도 했다.)

이 두가지 타입의 플랫폼의 카메라 모두 공통된 API를 통해 user space 에서 카메라를 컨트롤하는데

그게 바로 V4L2(Video for Linux 2)이다.

표준화된 API를 통해 사용자가 카메라 하드웨어에 상관없이 컨트롤할수 있게 드라이버를 구현해준다.

근데 안드로이드를 보니 의외의 부분을 발견했다.

Change 1776: add camera-interface library for dream (Merged) 
http://review.source.android.com/1776

카메라 컨트롤을 위한 라이브러리를 제공한다.

게다가 이런 불평불만들이 돌아다닌다
http://groups.google.com/group/android-developers/browse_thread/thread/927f115aa34f4806

불평불만을 요약해보면 안드로이드 에뮬에서(QEMU) 카메라를 사용하지 못해서 불만이라는 내용과

퀄컴의 외주(?) 엔지니어쯤 되는것 같은 Mark Kahrl 이 일을 제대로 못해 놨는지

이미 출시된 HTC의 G1 디바이스가 프리뷰를 보통 잘 쓰지 않는 YUV411 포맷을 사용해서

사용자들이 임의로 어플을 제작하면 (보통 422 혹은 420 을 많이쓴다)

화면이 깨지는 문제가 발생하는것이다.

poor Mark...

퀄컴이 MSM의 카메라 인터페이스에 대해 레지스터 등을 공개하지 않은 것인지...

msm 커널 트리에서 카메라 인터페이스의 드라이버를 난 아직 못찾고 있다.

그리고 위에 링크를 건 HTC dream  용 카메라 라이브러리는 뭔가

V4L2 가 아닌 자체 인터페이스를 제공한다는건지?

리눅스와 같은 오픈 프로젝트엔 그다지 맞지 않는 것 같다고 느끼는건 나뿐일까?


이올린에 북마크하기(0) 이올린에 추천하기(0)
크리에이티브 커먼즈 라이선스
Creative Commons License

Tag : Android, Camera, Qualcomm, v4l2