国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

網(wǎng)站怎么做移動端適配今天最新消息

網(wǎng)站怎么做移動端適配,今天最新消息,介紹網(wǎng)頁設(shè)計,電腦制作網(wǎng)站用哪個軟件一.RK安卓hal3 camera框架 Camera hal3 在 android 框架中所處的位置如上圖, 對上,主要實(shí)現(xiàn) Framework 一整套 API 接口,響應(yīng)其 控制命令,返回數(shù)據(jù)與控制參數(shù)結(jié)果。 對下, 主要是通 V4l2 框架實(shí)現(xiàn)與 kernel 的交互。3a…

一.RK安卓hal3 camera框架

Camera hal3 在 android 框架中所處的位置如上圖, 對上,主要實(shí)現(xiàn) Framework 一整套 API 接口,響應(yīng)其 控制命令,返回數(shù)據(jù)與控制參數(shù)結(jié)果。 對下, 主要是通 V4l2 框架實(shí)現(xiàn)與 kernel 的交互。3a 控制則是通 control loop 接口與 camera_engine_isp 交互。 另外,其中一些組件或功能的實(shí)現(xiàn)也會調(diào)用到其他一些第三方 庫, 如 cameraBuffer 相關(guān),會調(diào)用到 Galloc 相關(guān)庫, jpeg 編碼則會調(diào)用到 Hwjpeg 相關(guān)庫。

二.Camera hal3 與 Frame work 交互時序?

三.usbcamera調(diào)試

首先硬件給usb供電,供電后插上usbcamera可以看到新生成的pid vid。

ls /dev/video*

新生成了video1 video2.

media-ctl -d /dev/media0 -p
1|console:/ # media-ctl -d /dev/media0 -p
Opening media device /dev/media0
Enumerating entities
Found 4 entities
Enumerating pads and links
Media controller API version 0.0.189Media device information
------------------------
driver          uvcvideo
model           USB2.0 PC CAMERA: USB2.0 PC CAM
serial
bus info        usb-fc880000.usb-1.3
hw revision     0x100
driver version  0.0.189Device topology
- entity 1: USB2.0 PC CAMERA: USB2.0 PC CAM (1 pad, 1 link)type Node subtype V4Ldevice node name /dev/video1pad0: Sink<- "Processing 2":1 [ENABLED,IMMUTABLE]- entity 4: USB2.0 PC CAMERA: USB2.0 PC CAM (0 pad, 0 link)type Node subtype V4Ldevice node name /dev/video2- entity 8: Processing 2 (2 pads, 2 links)type V4L2 subdev subtype Unknownpad0: Sink
v4l2_subdev_open: Failed to open subdev device node<- "Input 1":0 [ENABLED,IMMUTABLE]pad1: Source
v4l2_subdev_open: Failed to open subdev device node-> "USB2.0 PC CAMERA: USB2.0 PC CAM":0 [ENABLED,IMMUTABLE]- entity 11: Input 1 (1 pad, 1 link)type V4L2 subdev subtype Sensorpad0: Source
v4l2_subdev_open: Failed to open subdev device node-> "Processing 2":0 [ENABLED,IMMUTABLE]

?查看拓?fù)鋱D,生成新的video1 video2.

dumpsys media.camera
onsole:/ # dumpsys media.camera== Service global info: ==Number of camera devices: 1
Number of normal camera devices: 1
Number of public camera devices visible to API1: 1Device 0 maps to "101"
Active Camera Clients:
[]
Allowed user IDs: 0== Camera service events log (most recent at top): ==02-01 18:52:22 : ADD device 101, reason: (Device added)02-01 18:50:29 : REMOVE device 101, reason: (Device status changed from 1 to 0)02-01 18:08:37 : DISCONNECT device 101 client for package com.android.camera2 (PID 6195)02-01 18:08:37 : CONNECT device 101 client for package com.android.camera2 (PID 6195)02-01 18:06:25 : ADD device 101, reason: (Device added)02-01 18:06:16 : REMOVE device 101, reason: (Device status changed from 1 to 0)02-01 18:03:23 : ADD device 101, reason: (Device added)02-01 18:01:26 : REMOVE device 101, reason: (Device status changed from 1 to 0)02-01 18:00:53 : DISCONNECT device 101 client for package com.android.camera2 (PID 4701)02-01 18:00:53 : CONNECT device 101 client for package com.android.camera2 (PID 4701)02-01 18:00:34 : DISCONNECT device 101 client for package com.android.camera2 (PID 3004)02-01 18:00:34 : CONNECT device 101 client for package com.android.camera2 (PID 3004)02-01 18:00:29 : DISCONNECT device 101 client for package com.android.camera2 (PID 3004)02-01 18:00:29 : CONNECT device 101 client for package com.android.camera2 (PID 3004)02-01 18:00:04 : ADD device 101, reason: (Device added)02-01 18:00:01 : USER_SWITCH previous allowed user IDs: <None>, current allowed user IDs: 0== Camera device 101 dynamic info: ==Device 101 is closed, no client instance
== Camera Provider HAL external/0-0 (v2.5, remote) static info: 1 devices: ==
== Camera HAL device device@3.4/external/101 (v3.4) static information: ==Resource cost: 100Conflicting devices: NoneAPI1 info:Has a flash unit: falseFacing: FrontOrientation: 0API2 camera characteristics:Dumping camera metadata array: 55 / 55 entries, 2048 / 2048 bytes of extra data.Version: 1, Flags: 00000000android.info.supportedHardwareLevel (150000): byte[1][EXTERNAL ]android.colorCorrection.availableAberrationModes (00004): byte[1][0 ]android.control.aeAvailableAntibandingModes (10012): byte[1][3 ]android.control.maxRegions (1001c): int32[3][0 0 0 ]android.control.availableVideoStabilizationModes (1001a): byte[1][0 ]android.control.awbAvailableModes (1001b): byte[1][1 ]android.control.aeAvailableModes (10013): byte[1][1 ]android.control.availableEffects (10018): byte[1][0 ]android.control.availableModes (10026): byte[2][0 1 ]android.edge.availableEdgeModes (30002): byte[1][0 ]android.flash.info.available (50000): byte[1][FALSE ]android.hotPixel.availableHotPixelModes (60001): byte[1][0 ]android.jpeg.availableThumbnailSizes (70007): int32[14][0 0 176 144 ][240 144 256 144 ][240 160 256 154 ][240 180 ]android.jpeg.maxSize (70008): int32[1][3145728 ]android.lens.info.focusDistanceCalibration (90007): byte[1][UNCALIBRATED ]android.lens.info.availableOpticalStabilization (90003): byte[1][0 ]android.lens.facing (80005): byte[1][FRONT ]android.noiseReduction.availableNoiseReductionModes (a0002): byte[1][0 ]android.noiseReduction.mode (a0000): byte[1][OFF ]android.request.partialResultCount (c000b): int32[1][1 ]android.request.pipelineMaxDepth (c000a): byte[1][4 ]android.request.maxNumOutputStreams (c0006): int32[3][0 2 1 ]android.request.maxNumInputStreams (c0008): int32[1][0 ]android.scaler.availableMaxDigitalZoom (d0004): float[1][4.00000000 ]android.scaler.croppingType (d000d): byte[1][CENTER_ONLY ]android.sensor.availableTestPatternModes (e0019): int32[2][0 1 ]android.sensor.info.timestampSource (f0008): byte[1][UNKNOWN ]android.sensor.orientation (e000e): int32[1][0 ]android.shading.availableModes (100002): byte[1][0 ]android.statistics.info.availableFaceDetectModes (120000): byte[1][0 ]android.statistics.info.maxFaceCount (120002): int32[1][0 ]android.statistics.info.availableHotPixelMapModes (120006): byte[1][0 ]android.statistics.info.availableLensShadingMapModes (120007): byte[1][0 ]android.sync.maxLatency (170001): int32[1][UNKNOWN ]android.request.availableRequestKeys (c000d): int32[28][3 65536 65537 65538 ][65539 65542 65541 65543 ][65545 65546 65547 65549 ][65550 65551 65552 65553 ][262146 458755 458756 458757 ][458758 524292 655360 851968 ][917528 1114112 1114115 65583 ]android.request.availableResultKeys (c000e): int32[35][3 65536 65537 65538 ][65539 65542 65567 65541 ][65543 65568 65545 65546 ][65547 65570 65549 65550 ][65551 65552 65553 262146 ][262149 458755 458756 458757 ][458758 524292 655360 786441 ][851968 917520 1114112 1114115 ][1114128 1114126 65583 ]android.request.availableCharacteristicsKeys (c000f): int32[43][4 65554 65555 65556 ][65557 65558 65572 65559 ][65560 65574 65561 65562 ][65563 65573 65564 327680 ][1376256 458759 524293 589827 ][589831 655362 786444 786440 ][786438 786443 786442 851972 ][851978 851981 983040 983044 ][983046 983050 983048 917518 ][1048578 1179648 1179654 1179655 ][1179650 1507329 65582 ]android.control.aeCompensationRange (10015): int32[2][0 0 ]android.control.aeCompensationStep (10016): rational[1][(0 / 1) ]android.control.afAvailableModes (10017): byte[2][1 0 ]android.control.availableSceneModes (10019): byte[1][0 ]android.control.aeLockAvailable (10024): byte[1][FALSE ]android.control.awbLockAvailable (10025): byte[1][FALSE ]android.scaler.availableStreamConfigurations (d000a): int32[72][33 160 120 OUTPUT ][35 160 120 OUTPUT ][34 160 120 OUTPUT ][33 176 144 OUTPUT ][35 176 144 OUTPUT ][34 176 144 OUTPUT ][33 320 240 OUTPUT ][35 320 240 OUTPUT ][34 320 240 OUTPUT ][33 352 288 OUTPUT ][35 352 288 OUTPUT ][34 352 288 OUTPUT ][33 640 480 OUTPUT ][35 640 480 OUTPUT ][34 640 480 OUTPUT ][33 800 600 OUTPUT ][35 800 600 OUTPUT ][34 800 600 OUTPUT ]android.scaler.availableMinFrameDurations (d000b): int64[72][33 160 ][120 33333333 ][35 160 ][120 33333333 ][34 160 ][120 33333333 ][33 176 ][144 33333333 ][35 176 ][144 33333333 ][34 176 ][144 33333333 ][33 320 ][240 33333333 ][35 320 ][240 33333333 ][34 320 ][240 33333333 ][33 352 ][288 33333333 ][35 352 ][288 33333333 ][34 352 ][288 33333333 ][33 640 ][480 33333333 ][35 640 ][480 33333333 ][34 640 ][480 33333333 ][33 800 ][600 33333333 ][35 800 ][600 33333333 ][34 800 ][600 33333333 ]android.scaler.availableStallDurations (d000c): int64[72][33 160 ][120 1000000000 ][35 160 ][120 0 ][34 160 ][120 0 ][33 176 ][144 1000000000 ][35 176 ][144 0 ][34 176 ][144 0 ][33 320 ][240 1000000000 ]

dump出來可以看到生成新的cameraid。

Number of camera devices: 1

Number of normal camera devices: 1

v4l2-ctl -d /dev/video1 --all

?查看video1信息

130|console:/ # v4l2-ctl -d /dev/video1 --all
Driver Info:Driver name      : uvcvideoCard type        : USB2.0 PC CAMERA: USB2.0 PC CAMBus info         : usb-fc880000.usb-1.3Driver version   : 5.10.189Capabilities     : 0x84a00001Video CaptureMetadata CaptureStreamingExtended Pix FormatDevice CapabilitiesDevice Caps      : 0x04200001Video CaptureStreamingExtended Pix Format
Media Driver Info:Driver name      : uvcvideoModel            : USB2.0 PC CAMERA: USB2.0 PC CAMSerial           :Bus info         : usb-fc880000.usb-1.3Media version    : 5.10.189Hardware revision: 0x00000100 (256)Driver version   : 5.10.189
Interface Info:ID               : 0x03000002Type             : V4L Video
Entity Info:ID               : 0x00000001 (1)Name             : USB2.0 PC CAMERA: USB2.0 PC CAMFunction         : V4L2 I/OPad 0x01000007   : SinkLink 0x0200000d: from remote pad 0x100000a of entity 'Processing 2': Data, Enabled, Immutable
Priority: 2
Video input : 0 (Input 1: ok)
Format Video Capture:Width/Height      : 640/480Pixel Format      : 'YUYV'Field             : NoneBytes per Line    : 1280Size Image        : 614400Colorspace        : DefaultTransfer Function : Default (maps to Rec. 709)YCbCr/HSV Encoding: Default (maps to ITU-R 601)Quantization      : Default (maps to Limited Range)Flags             :
Crop Capability Video Capture:Bounds      : Left 0, Top 0, Width 640, Height 480Default     : Left 0, Top 0, Width 640, Height 480Pixel Aspect: 1/1
Selection: crop_default, Left 0, Top 0, Width 640, Height 480, Flags:
Selection: crop_bounds, Left 0, Top 0, Width 640, Height 480, Flags:
Streaming Parameters Video Capture:Capabilities     : timeperframeFrames per second: 30.000 (30/1)Read buffers     : 0brightness 0x00980900 (int)    : min=0 max=255 step=1 default=128 value=128contrast 0x00980901 (int)    : min=0 max=255 step=1 default=135 value=135saturation 0x00980902 (int)    : min=0 max=255 step=1 default=75 value=75hue 0x00980903 (int)    : min=-127 max=127 step=1 default=0 value=0gamma 0x00980910 (int)    : min=1 max=8 step=1 default=4 value=4power_line_frequency 0x00980918 (menu)   : min=0 max=2 default=1 value=1sharpness 0x0098091b (int)    : min=0 max=15 step=1 default=5 value=5backlight_compensation 0x0098091c (int)    : min=1 max=5 step=1 default=1 value=1
v4l2-ctl -d /dev/video1 --list-formats-ext

查看video1支持的格式和分辨率

console:/ # v4l2-ctl -d /dev/video1 --list-formats-ext
ioctl: VIDIOC_ENUM_FMTIndex       : 0Type        : Video CapturePixel Format: 'YUYV'Name        : YUYV 4:2:2Size: Discrete 640x480Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.067s (15.000 fps)Size: Discrete 352x288Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.067s (15.000 fps)Size: Discrete 320x240Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.067s (15.000 fps)Size: Discrete 176x144Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.067s (15.000 fps)Size: Discrete 160x120Interval: Discrete 0.033s (30.000 fps)Interval: Discrete 0.067s (15.000 fps)

分析:此時打開usbcamera的畫面是黑屏,查看hal3 camera框架里面適配的分辨率和視頻格式是否支持yuvv,最大的分辨率為640*480.

四.代碼修改點(diǎn)亮usbcamera

--- a/rk3588_an13/device/rockchip/common/external_camera_config.xml
+++ b/rk3588_an13/device/rockchip/common/external_camera_config.xml
@@ -7,7 +7,8 @@<!-- See ExternalCameraUtils.cpp for default values of Device configurations below--><Device><!-- Max JPEG buffer size in bytes-->
-        <MaxJpegBufferSize  bytes="3145728"/>  <!-- 3MB (~= 1080p YUV420) -->
+        <!-- MaxJpegBufferSize  bytes="3145728"/> -->  <!-- 3MB (~= 1080p YUV420) -->
+        <MaxJpegBufferSize  bytes="13631488"/>  <!-- 13MB 1300w pixel (~= 4k YUV420) --><!-- Size of v4l2 buffer queue when streaming >= 30fps --><!-- Larger value: more request can be cached pipeline (less janky) --><!-- Smaller value: use less memory -->
--- a/rk3588_an13/frameworks/av/services/camera/libcameraservice/api1/client2/Parameters.h
+++ b/rk3588_an13/frameworks/av/services/camera/libcameraservice/api1/client2/Parameters.h
@@ -199,11 +199,11 @@ struct Parameters {// Max preview size allowed// This is set to a 1:1 value to allow for any aspect ratio that has// a max long side of 1920 pixels
-    static const unsigned int MAX_PREVIEW_WIDTH = 1920;
-    static const unsigned int MAX_PREVIEW_HEIGHT = 1920;
+    static const unsigned int MAX_PREVIEW_WIDTH = 640;
+    static const unsigned int MAX_PREVIEW_HEIGHT = 480;// Initial max preview/recording size bound
-    static const int MAX_INITIAL_PREVIEW_WIDTH = 1920;
-    static const int MAX_INITIAL_PREVIEW_HEIGHT = 1080;
+    static const int MAX_INITIAL_PREVIEW_WIDTH = 640;
+    static const int MAX_INITIAL_PREVIEW_HEIGHT = 480;
--- a/rk3588_an13/hardware/interfaces/camera/device/3.4/default/ExternalCameraDevice.cpp
+++ b/rk3588_an13/hardware/interfaces/camera/device/3.4/default/ExternalCameraDevice.cpp
@@ -52,7 +52,7 @@ constexpr int MAX_RETRY = 5; // Allow retry v4l2 open failures a few times.constexpr int OPEN_RETRY_SLEEP_US = 100000; // 100ms * MAX_RETRY = 0.5 secondsstatic uint Camera_Resolution[][2] = {{320,240},/*{352,288},*/
-                     {640,480},{800,600},/*{1280,720},{1280,960},{1920,1080},{2048,1536},{2560,1440},{2592,1944},{2592,1456},*/
+                     {640,480},/*{800,600},{1280,720},{1280,960},{1920,1080},{2048,1536},{2560,1440},{2592,1944},{2592,1456},*/{0,0}};} // anonymous namespace
@@ -444,7 +444,8 @@ status_t ExternalCameraDevice::initDefaultCharsKeys(256, 144,240, 160,256, 154,
-                                                  240, 180};
+                                                  240, 180,
+                                                  640, 480};UPDATE(ANDROID_JPEG_AVAILABLE_THUMBNAIL_SIZES, jpegAvailableThumbnailSizes,ARRAY_SIZE(jpegAvailableThumbnailSizes));
--- a/rk3588_an13/hardware/interfaces/camera/device/3.4/default/RgaCropScale.cpp
+++ b/rk3588_an13/hardware/interfaces/camera/device/3.4/default/RgaCropScale.cpp
@@ -38,6 +38,11 @@ namespace camera2 {#define RGA_ACTIVE_H (2048)#define RGA_VIRTUAL_H (2048)+#define RGA_ACTIVE_W (640)
+#define RGA_VIRTUAL_W (640)
+#define RGA_ACTIVE_H (480)
+#define RGA_VIRTUAL_H (480)
+#endif

http://m.aloenet.com.cn/news/1375.html

相關(guān)文章:

  • tv做后綴的動漫網(wǎng)站百度廣告點(diǎn)擊軟件
  • 河南省住房和城鄉(xiāng)建設(shè)廳網(wǎng)站主頁鄭州最好的建站公司
  • 宣城市政建設(shè)集團(tuán)有限公司網(wǎng)站鄭州seo外包平臺
  • 銷售網(wǎng)站建設(shè)公司網(wǎng)絡(luò)營銷是以什么為基礎(chǔ)
  • 做的最成功的網(wǎng)站百度知道官網(wǎng)登錄入口
  • 網(wǎng)站宣傳方法有哪些營銷方法有哪些方式
  • 北京html5網(wǎng)站建設(shè)百度在線問答
  • 內(nèi)江住房和城鄉(xiāng)建設(shè)廳網(wǎng)站廣告軟文200字
  • 北京海淀區(qū)網(wǎng)站建設(shè)全網(wǎng)營銷整合營銷
  • 阿里云 建設(shè)網(wǎng)站佛山網(wǎng)站建設(shè)排名
  • 漂亮大氣的裝潢室內(nèi)設(shè)計網(wǎng)站模板 單頁式html5網(wǎng)頁模板包國內(nèi)搜索引擎排行榜
  • 方圓網(wǎng)站建設(shè)國內(nèi)seo公司排名
  • 百度自助網(wǎng)站建設(shè)南寧網(wǎng)站快速排名提升
  • 上海設(shè)計網(wǎng)站baidu百度
  • 梅林網(wǎng)站建設(shè)網(wǎng)站診斷工具
  • 做兼職的網(wǎng)站是不是真的嗎重慶整站seo
  • 西安做網(wǎng)站比較好的公司臺州seo排名外包
  • 怎樣做單頁銷售網(wǎng)站軟文范例大全100字
  • 站酷網(wǎng)站源碼永久免費(fèi)域名注冊
  • 哪個網(wǎng)站可以做試卷上海牛巨微seo關(guān)鍵詞優(yōu)化
  • 番禺做網(wǎng)站哪家強(qiáng)北京seo公司網(wǎng)站
  • 新聞網(wǎng)站建設(shè)合同谷歌優(yōu)化師
  • 最新獲取網(wǎng)站訪客qq接口成人職業(yè)技術(shù)培訓(xùn)學(xué)校
  • 萊蕪網(wǎng)站優(yōu)化招聘網(wǎng)sem是什么的英文縮寫
  • 微信公眾平臺推廣簡述seo的概念
  • 專注網(wǎng)站開發(fā)網(wǎng)站頁面seo
  • 做直播網(wǎng)站需要什么騰訊企點(diǎn)qq
  • 鹵菜店加盟優(yōu)化排名推廣技術(shù)網(wǎng)站
  • 常州做網(wǎng)站包括哪些優(yōu)化網(wǎng)站收費(fèi)標(biāo)準(zhǔn)
  • 頁面設(shè)計好嗎seo怎么發(fā)布外鏈