作者erspicu (.)
看板AndroidDev
标题[问题] NDK对硬体的控制权?
时间Thu Aug 25 20:41:54 2011
如果完全掌控手机的相机功能
似乎官方的api根本不够
一定得往底层硬体控制走了
势必得用NDK去开发
现在的问题是 我对ndk能够涉入的硬体存取能力不太清楚
如果要完全控制硬体 可能就需要写入特殊的address register了
在android允许使用者以NDK对硬体进行这样的控制吗?
另外每台相机的硬体格也都不同
在没能拿到手机厂商的第三方韧体原始码前
也没有硬体规格书的状况下
该如何进行这种底层的开发?
我超希望我的手机有一天能自己完全掌控快门.iso.焦距 也能够写raw档的....
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.70.31.11
1F:→ ppaass:大部分都有共通的 framework for NDK,请参考这本书 :y 08/25 20:51
2F:→ ppaass:深入浅出Android系统原理及开发要点/博硕文化/韩超,梁泉着 08/25 20:52
3F:推 chiwa:其他装置没碰过我不敢讲,单就image sensor来说,很多东西也 08/26 00:54
4F:→ chiwa:是光看spec也写不出来,除非你对sensor内部所有元件的行为都 08/26 00:56
5F:→ chiwa:很了解,才能知道甚麽时机点该去对什麽register做存取、该写 08/26 00:57
6F:→ chiwa:什麽样的data进去。这些事情真的只有那些卖sensor的厂商知道 08/26 00:58
7F:→ chiwa:你想要掌控的那些功能并不是单纯设定几个register就可以办到 08/26 00:59
8F:→ chiwa:那些register设定可能有上百组或上千组 08/26 01:00
9F:→ priv:简单说,NDK最多可以做到HAL层的能力 08/26 16:59
10F:→ priv:有兴趣的话抓一套BSP下来直接build看看会比NDK了解更深入 08/26 17:00
11F:→ priv:你要做到这麽底层,直接用NDK比较像在瞎子摸象 08/26 17:00
12F:→ erspicu:感谢研究bsp似乎才是正解... 08/26 17:56
13F:→ priv:说实在Camera如果你有datasheet的话 08/26 18:02
14F:→ priv:手机上的相机,一般真正需要你去控制的register不会很多 08/26 18:03
15F:→ priv:问题比较麻烦是每一颗Camera都不尽相同 08/26 18:03
16F:→ priv:然後不同solution的BSP一定会有差距 08/26 18:04
17F:→ priv:想要写一个app一网打尽很多的机型就变成不可能的任务 08/26 18:04
18F:→ priv:现在中国制的ARM11实验板便宜的很多,应该也有含Camera的 08/26 18:05
19F:→ priv:你在问题范筹其实已经到了embedded system比较底层的部份 08/26 18:05
20F:→ priv:如果真的想要完全控制Camera其实你无法bypass driver 08/26 18:06
21F:→ priv:如果手动写入register难免会和driver的写入互相干扰 08/26 18:07
22F:→ priv:如果要动到driver就不是NDK可以去做修改的 08/26 18:08
23F:→ priv:已经属於Linux Kernel的范筹 08/26 18:08