Firefly开源社区

标题: USB的720P摄像头花屏的问题 [打印本页]

作者: yaolunlun    时间: 2014-12-16 16:14
标题: USB的720P摄像头花屏的问题
本帖最后由 yaolunlun 于 2014-12-19 16:03 编辑

最近买的Firefly板子,测试720P的USB摄像头,输出格式为mjpeg。获取视频时,视频是花屏的。请问,Firefly的工程师们,你们测试过吗?:'(
Logcat输出信息:
  1. <span style="line-height: 1.5;">12-16 09:42:00.765: D/AndroidRuntime(3767): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<<</span>
  2. 12-16 09:42:00.765: D/AndroidRuntime(3767): CheckJNI is OFF
  3. 12-16 09:42:00.765: I/AndroidRuntime(3767): JNI options: '-Xjniopts:warnonly'
  4. 12-16 09:42:00.775: D/dalvikvm(3767): Trying to load lib libjavacore.so 0x0
  5. 12-16 09:42:00.775: D/dalvikvm(3767): Added shared lib libjavacore.so 0x0
  6. 12-16 09:42:00.775: D/dalvikvm(3767): Trying to load lib libnativehelper.so 0x0
  7. 12-16 09:42:00.775: D/dalvikvm(3767): Added shared lib libnativehelper.so 0x0
  8. 12-16 09:42:00.775: D/dalvikvm(3767): No JNI_OnLoad found in libnativehelper.so 0x0, skipping init
  9. 12-16 09:42:00.775: D/dalvikvm(3767): Trying to load lib librkbm.so 0x0
  10. 12-16 09:42:00.775: D/dalvikvm(3767): Added shared lib librkbm.so 0x0
  11. 12-16 09:42:00.795: D/dalvikvm(3767): Note: class Landroid/app/ActivityManagerNative; has 179 unimplemented (abstract) methods
  12. 12-16 09:42:00.875: E/memtrack(3767): Couldn't load memtrack module (No such file or directory)
  13. 12-16 09:42:00.875: E/android.os.Debug(3767): failed to load memtrack module: -2
  14. 12-16 09:42:00.905: D/AndroidRuntime(3767): Calling main entry com.android.commands.pm.Pm
  15. 12-16 09:42:00.915: D/AndroidRuntime(3767): Shutting down VM
  16. 12-16 09:42:00.915: D/jdwp(3767): Got wake-up signal, bailing out of select
  17. 12-16 09:42:00.915: D/dalvikvm(3767): Debugger has detached; object registry had 1 entries
  18. 12-16 09:42:01.355: D/AndroidRuntime(3778): >>>>>> AndroidRuntime START com.android.internal.os.RuntimeInit <<<<<<
  19. 12-16 09:42:01.365: D/AndroidRuntime(3778): CheckJNI is OFF
  20. 12-16 09:42:01.365: I/AndroidRuntime(3778): JNI options: '-Xjniopts:warnonly'
  21. 12-16 09:42:01.365: D/dalvikvm(3778): Trying to load lib libjavacore.so 0x0
  22. 12-16 09:42:01.375: D/dalvikvm(3778): Added shared lib libjavacore.so 0x0
  23. 12-16 09:42:01.375: D/dalvikvm(3778): Trying to load lib libnativehelper.so 0x0
  24. 12-16 09:42:01.375: D/dalvikvm(3778): Added shared lib libnativehelper.so 0x0
  25. 12-16 09:42:01.375: D/dalvikvm(3778): No JNI_OnLoad found in libnativehelper.so 0x0, skipping init
  26. 12-16 09:42:01.375: D/dalvikvm(3778): Trying to load lib librkbm.so 0x0
  27. 12-16 09:42:01.375: D/dalvikvm(3778): Added shared lib librkbm.so 0x0
  28. 12-16 09:42:01.395: D/dalvikvm(3778): Note: class Landroid/app/ActivityManagerNative; has 179 unimplemented (abstract) methods
  29. 12-16 09:42:01.475: E/memtrack(3778): Couldn't load memtrack module (No such file or directory)
  30. 12-16 09:42:01.475: E/android.os.Debug(3778): failed to load memtrack module: -2
  31. 12-16 09:42:01.505: D/AndroidRuntime(3778): Calling main entry com.android.commands.am.Am
  32. 12-16 09:42:01.515: I/ActivityManager(483): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.interfaces.androidencode/.MainActivity} from pid 3778
  33. 12-16 09:42:01.545: D/dalvikvm(483): GC_FOR_ALLOC freed 1586K, 30% free 6441K/9168K, paused 30ms, total 30ms
  34. 12-16 09:42:01.555: D/AndroidRuntime(3778): Shutting down VM
  35. 12-16 09:42:01.555: D/BluetoothAdapter(3729): 1100602552: getState() :  mService = null. Returning STATE_OFF
  36. 12-16 09:42:01.555: D/LocalBluetoothManager(3729): setting foreground activity to null
  37. 12-16 09:42:01.555: D/jdwp(3778): Got wake-up signal, bailing out of select
  38. 12-16 09:42:01.555: D/dalvikvm(3778): Debugger has detached; object registry had 1 entries
  39. 12-16 09:42:01.565: D/dalvikvm(3789): Late-enabling CheckJNI
  40. 12-16 09:42:01.565: I/ActivityManager(483): Start proc com.interfaces.androidencode for activity com.interfaces.androidencode/.MainActivity: pid=3789 uid=10062 gids={50062, 1028, 1015, 3003}
  41. 12-16 09:42:01.585: E/jdwp(3789): Failed sending reply to debugger: Broken pipe
  42. 12-16 09:42:01.585: D/dalvikvm(3789): Debugger has detached; object registry had 1 entries
  43. 12-16 09:42:01.615: D/dalvikvm(3789): GC_FOR_ALLOC freed 41K, 11% free 2791K/3112K, paused 14ms, total 14ms
  44. 12-16 09:42:01.615: I/dalvikvm-heap(3789): Grow heap (frag case) to 4.066MB for 1382416-byte allocation
  45. 12-16 09:42:01.625: D/dalvikvm(3789): GC_FOR_ALLOC freed <1K, 8% free 4141K/4464K, paused 12ms, total 12ms
  46. 12-16 09:42:01.645: D/dalvikvm(3789): GC_CONCURRENT freed <1K, 8% free 4141K/4464K, paused 2ms+1ms, total 13ms
  47. 12-16 09:42:01.645: D/dalvikvm(3789): WAIT_FOR_CONCURRENT_GC blocked 12ms
  48. 12-16 09:42:01.645: I/dalvikvm-heap(3789): Grow heap (frag case) to 5.384MB for 1382416-byte allocation
  49. 12-16 09:42:01.655: D/dalvikvm(3789): GC_FOR_ALLOC freed <1K, 6% free 5491K/5816K, paused 14ms, total 14ms
  50. 12-16 09:42:01.675: D/dalvikvm(3789): GC_CONCURRENT freed 3K, 6% free 5522K/5816K, paused 1ms+2ms, total 16ms
  51. 12-16 09:42:01.675: D/StatusBar.NetworkController(565): refreshViews connected={ wifi } level=0 combinedSignalIconId=0x7f0200a9/com.android.systemui:drawable/stat_sys_wifi_signal_3_fully mobileLabel= wifiLabel="YKRH-office"xxxxXXXXxxxxXXXX emergencyOnly=false combinedLabel="YKRH-office"xxxxXXXXxxxxXXXX mAirplaneMode=false mDataActivity=0 mPhoneSignalIconId=0x0 mQSPhoneSignalIconId=0x0 mDataDirectionIconId=0x0 mDataSignalIconId=0x0 mDataTypeIconId=0x0 mQSDataTypeIconId=0x0 mWifiIconId=0x7f0200a9 mQSWifiIconId=0x7f02005d mBluetoothTetherIconId=0x10805d5
  52. 12-16 09:42:01.695: I/OMXClient(3789): Using client-side OMX mux.
  53. 12-16 09:42:01.695: I/MediaCodecList(3789): register mediacode *****************
  54. 12-16 09:42:01.705: I/ACodec(3789): setupVideoEncoder succeeded
  55. 12-16 09:42:01.705: E/ROCKCHIP_VIDEO_ENC(145): EncParam.framerate  = 30 outPort->sPortParam.format.video.xFramerate = 1966080 3500000
  56. 12-16 09:42:01.705: D/pv_avcenc_api(145): cml->cabacintIdc  0 cml->enablaCabac 0 cml->intraPicRate 30
  57. 12-16 09:42:01.705: D/pv_avcenc_api(145): init intraPeriodCnt 30
  58. 12-16 09:42:01.785: D/mali_winsys(3789): new_window_surface returns 0x3000
  59. 12-16 09:42:01.805: D/OpenGLRenderer(3789): Enabling debug mode 0
  60. 12-16 09:42:01.815: D/CameraHal(145): camera_get_camera_info(1288): camera_get_camera_info(1288): camera_0 facing(0), orientation(0)
  61. 12-16 09:42:01.815: D/CameraHal(145): camera_get_camera_info(1288): camera_get_camera_info(1288): camera_0 facing(0), orientation(0)
  62. 12-16 09:42:01.815: D/CameraHal(145): camera_get_camera_info(1288): camera_get_camera_info(1288): camera_0 facing(0), orientation(0)
  63. 12-16 09:42:01.815: D/MediaPlayerFactory(145): createPlayer:playerType=3
  64. 12-16 09:42:01.815: D/MediaPlayerFactory(145):  create StagefrightPlayer
  65. 12-16 09:42:01.825: I/AwesomePlayer(145): AwesomePlayer::AwesomePlayer()in
  66. 12-16 09:42:01.825: I/AwesomePlayer(145): AwesomePlayer::AwesomePlayer()aftermClient.connect()
  67. 12-16 09:42:01.825: I/FrameQueueManage(145): use_iommu = 0x1
  68. 12-16 09:42:01.825: I/AwesomePlayer(145): setDataSource /system/media/audio/ui/camera_click.ogg
  69. 12-16 09:42:01.825: I/AwesomePlayer(145): setDataSource_l(URL suppressed)
  70. 12-16 09:42:01.835: I/OMXCodec(145): OMXCodec::Create mime: audio/vorbis
  71. 12-16 09:42:01.835: I/OMXCodec(145): --->InstantiateSoftwareCodec create OMX.google.vorbis.decoder codec
  72. 12-16 09:42:01.835: I/OMXCodec(145): Attempting to allocate OMX node 'OMX.google.vorbis.decoder'
  73. 12-16 09:42:01.845: I/OMXCodec(145): Successfully allocated OMX node 'OMX.google.vorbis.decoder'
  74. 12-16 09:42:01.845: D/MediaPlayerFactory(145): createPlayer:playerType=3
  75. 12-16 09:42:01.845: D/MediaPlayerFactory(145):  create StagefrightPlayer
  76. 12-16 09:42:01.845: I/AwesomePlayer(145): AwesomePlayer::AwesomePlayer()in
  77. 12-16 09:42:01.845: I/AwesomePlayer(145): AwesomePlayer::AwesomePlayer()aftermClient.connect()
  78. 12-16 09:42:01.845: I/FrameQueueManage(145): use_iommu = 0x1
  79. 12-16 09:42:01.845: I/AwesomePlayer(145): setDataSource /system/media/audio/ui/VideoRecord.ogg
  80. 12-16 09:42:01.845: I/AwesomePlayer(145): setDataSource_l(URL suppressed)
  81. 12-16 09:42:01.855: I/OMXCodec(145): OMXCodec::Create mime: audio/vorbis
  82. 12-16 09:42:01.855: I/OMXCodec(145): --->InstantiateSoftwareCodec create OMX.google.vorbis.decoder codec
  83. 12-16 09:42:01.855: I/OMXCodec(145): Attempting to allocate OMX node 'OMX.google.vorbis.decoder'
  84. 12-16 09:42:01.855: I/OMXCodec(145): Successfully allocated OMX node 'OMX.google.vorbis.decoder'
  85. 12-16 09:42:01.865: I/CameraClient(145): Opening camera 0
  86. 12-16 09:42:01.865: I/CameraHal(145): camera_device_open(493): camera_device open
  87. 12-16 09:42:01.865: D/CameraHal(145): gCameraHalLogLevel: 0
  88. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, open_vpu_memory_pool:447: success
  89. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:690: vpu memory pool size (80000)
  90. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:693: ion_alloc_fd success, memory fd 63
  91. 12-16 09:42:01.865: D/CameraHal(145): CameraHal(113): it is a uvc camera!
  92. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:690: vpu memory pool size (160000)
  93. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:693: ion_alloc_fd success, memory fd 67
  94. 12-16 09:42:01.865: D/(145): Calling process is: com.interfaces.androidencode
  95. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:690: vpu memory pool size (240000)
  96. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:693: ion_alloc_fd success, memory fd 65
  97. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:690: vpu memory pool size (320000)
  98. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:693: ion_alloc_fd success, memory fd 71
  99. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:690: vpu memory pool size (400000)
  100. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:693: ion_alloc_fd success, memory fd 72
  101. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:690: vpu memory pool size (480000)
  102. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:693: ion_alloc_fd success, memory fd 73
  103. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:690: vpu memory pool size (560000)
  104. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:693: ion_alloc_fd success, memory fd 74
  105. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:690: vpu memory pool size (640000)
  106. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:693: ion_alloc_fd success, memory fd 75
  107. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:690: vpu memory pool size (720000)
  108. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:693: ion_alloc_fd success, memory fd 76
  109. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:690: vpu memory pool size (800000)
  110. 12-16 09:42:01.865: I/vpu_mem_pool(145): pid 145, vpu_mem_allocator:693: ion_alloc_fd success, memory fd 77
  111. 12-16 09:42:01.945: D/CameraHal(145): cameraCreate(364): Camera driver: uvcvideo   Driver version: 3.10.0  CameraHal version: 1.0.12
  112. 12-16 09:42:01.945: D/CameraHal(145): cameraCreate(371): mCamDriverSupportFmt: fmt = 1196444237,index = 0
  113. 12-16 09:42:01.945: D/CameraHal(145): cameraCreate(371): mCamDriverSupportFmt: fmt = 1448695129,index = 1
  114. 12-16 09:42:01.945: D/CameraHal(145): cameraCreate(409): cameraCreate(409): mCamDriverPreviewFmt(MJPG) is cameraHal and camera driver is also supported!!
  115. 12-16 09:42:01.945: D/CameraHal(145): cameraCreate(411): mCamDriverPreviewFmt  = 1196444237
  116. 12-16 09:42:01.945: D/CameraHal(145): cameraCreate(417): cameraCreate(417): Current driver is uvcvideo, v4l2 memory is V4L2_MEMORY_MMAP
  117. 12-16 09:42:02.015: E/CameraHal(145): initDefaultParameters(486): initDefaultParameters(486): mCamDriverCapability.card is error!
  118. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(533): Support Preview format: yuv420sp,yuv420p .. yuv420sp
  119. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(535): Support Preview sizes: 1280x720,640x480,320x240,800x600,1280x960     640x480
  120. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(536): Support Preview FPS range: (25000,30000)
  121. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(537): Support Preview framerate: 30,25
  122. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(538): Support Picture sizes: 1280x720,640x480,320x240,800x600,1280x960
  123. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(540): Support white balance: auto,incandescent,fluorescent,daylight,cloudy-daylight
  124. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(548): Support focus: fixed  focus zone: 0
  125. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(550): Support zoom: true(ratios: 100,105,110,115,120,125,130,135,140,145,150,155,160,165,170,175,180,185,190,195,200,205,210,215,220,225,230,235,240,245,250,255,260,265,270,275,280,285,290,295,300,)
  126. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(554): Support exposure: (-3 -> 3)
  127. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(558): Support anti-banding: off,50hz,60hz,auto  anti-banding: off
  128. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(560): Support hardware faces detecte: 0
  129. 12-16 09:42:02.015: D/CameraHal(145): initDefaultParameters(561): Support software faces detecte: 0
  130. 12-16 09:42:02.025: D/CameraHal(145): initDefaultParameters(562): Support video stabilization: false
  131. 12-16 09:42:02.025: D/CameraHal(145): initDefaultParameters(563): Support recording hint: false
  132. 12-16 09:42:02.935: D/CameraHal(145): cameraConfig(677): cameraConfig(677): Set framerate(30 fps) success
  133. 12-16 09:42:02.935: D/CameraHal(145): cameraConfig(720): cameraConfig(720): Set white balance(auto) success
  134. 12-16 09:42:02.955: D/CameraHal(145): cameraConfig(797): cameraConfig(797): Set anti-banding Disabled
  135. 12-16 09:42:02.965: D/CameraHal(145): cameraConfig(879): cameraConfig(879): Set exposure 0  0
  136. 12-16 09:42:02.995: D/CameraHal(145): setParameters(582): setParameters(582): Set preview size 1280x720
  137. 12-16 09:42:02.995: D/CameraHal(145): commandThread(870): commandThread(870):receive CMD_SET_PREVIEW_WINDOW
  138. 12-16 09:42:02.995: D/CameraHal(145): commandThread(886): commandThread(886): CMD_SET_PREVIEW_WINDOW out
  139. 12-16 09:42:02.995: D/CameraHal(145): commandThread(767): commandThread(767):receive CMD_PREVIEW_START
  140. 12-16 09:42:02.995: D/CameraHal(145): startPreview(171): startPreview171:preview_w = 1280,preview_h = 720,drv_w = 1280,drv_h = 720
  141. 12-16 09:42:03.005: D/CameraHal(145): cameraSetSize(466): cameraSetSize(466):IN, w = 1280,h = 720
  142. 12-16 09:42:03.005: I/Choreographer(3789): Skipped 76 frames!  The application may be doing too much work on its main thread.
  143. 12-16 09:42:03.085: D/CameraHal(145): cameraStream(488): cameraStream(488):on = 1
  144. 12-16 09:42:03.155: I/ActivityManager(483): Displayed com.interfaces.androidencode/.MainActivity: +1s600ms
  145. 12-16 09:42:03.155: D/CameraHal(145): startPreview(217): startPreview(217):OUT
  146. 12-16 09:42:03.155: D/CameraHal(145): displayThread(575): displayThread(575): receive CMD_DISPLAY_START
  147. 12-16 09:42:03.165: D/CameraHal(145): commandThread(838): commandThread(838): CMD_PREVIEW_START out
  148. 12-16 09:42:03.475: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  149. 12-16 09:42:03.505: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  150. 12-16 09:42:03.535: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  151. 12-16 09:42:03.565: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  152. 12-16 09:42:03.705: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  153. 12-16 09:42:03.725: I/Pushhandler(2083): get uid = 1735870
  154. 12-16 09:42:03.735: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  155. 12-16 09:42:03.735: I/Pushhandler(2083): send userID:1735870 LastmsgID:773 msgLen:108VersionCode:6.5.9.0Install Source:kwplayer_ar_6.5.9.0_360.apk
  156. 12-16 09:42:03.765: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  157. 12-16 09:42:03.765: D/dalvikvm(2083): GC_FOR_ALLOC freed 654K, 20% free 2889K/3568K, paused 28ms, total 28ms
  158. 12-16 09:42:03.805: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  159. 12-16 09:42:03.905: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  160. 12-16 09:42:03.945: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  161. 12-16 09:42:03.995: I/Pushhandler(2083): recve msgid:773 hasMsg:0 msgLen:20 servTime:Tue Dec 16 09:41:53 GMT+00:00 2014
  162. 12-16 09:42:04.005: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  163. 12-16 09:42:04.015: I/Pushhandler(2083): Save push_lastMsgId value =773
  164. 12-16 09:42:04.105: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  165. 12-16 09:42:04.175: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  166. 12-16 09:42:04.205: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  167. 12-16 09:42:04.315: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  168. 12-16 09:42:04.355: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  169. 12-16 09:42:04.385: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  170. 12-16 09:42:04.515: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  171. 12-16 09:42:04.555: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  172. 12-16 09:42:04.585: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  173. 12-16 09:42:04.625: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  174. 12-16 09:42:04.685: D/StatusBar.NetworkController(565): refreshViews connected={ wifi } level=0 combinedSignalIconId=0x7f0200a9/com.android.systemui:drawable/stat_sys_wifi_signal_3_fully mobileLabel= wifiLabel="YKRH-office"xxxxXXXXxxxxXXXX emergencyOnly=false combinedLabel="YKRH-office"xxxxXXXXxxxxXXXX mAirplaneMode=false mDataActivity=0 mPhoneSignalIconId=0x0 mQSPhoneSignalIconId=0x0 mDataDirectionIconId=0x0 mDataSignalIconId=0x0 mDataTypeIconId=0x0 mQSDataTypeIconId=0x0 mWifiIconId=0x7f0200a9 mQSWifiIconId=0x7f02005d mBluetoothTetherIconId=0x10805d5
  175. 12-16 09:42:04.755: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  176. 12-16 09:42:04.785: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  177. 12-16 09:42:04.825: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  178. 12-16 09:42:04.925: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  179. 12-16 09:42:04.965: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  180. 12-16 09:42:04.995: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  181. 12-16 09:42:05.165: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  182. 12-16 09:42:05.195: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  183. 12-16 09:42:05.395: D/dalvikvm(3789): GC_FOR_ALLOC freed 198K, 4% free 6967K/7216K, paused 9ms, total 9ms
  184. 12-16 09:42:05.475: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  185. 12-16 09:42:05.505: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  186. 12-16 09:42:05.685: D/StatusBar.NetworkController(565): refreshViews connected={ wifi } level=0 combinedSignalIconId=0x7f0200a9/com.android.systemui:drawable/stat_sys_wifi_signal_3_fully mobileLabel= wifiLabel="YKRH-office"xxxxXXXXxxxxXXXX emergencyOnly=false combinedLabel="YKRH-office"xxxxXXXXxxxxXXXX mAirplaneMode=false mDataActivity=0 mPhoneSignalIconId=0x0 mQSPhoneSignalIconId=0x0 mDataDirectionIconId=0x0 mDataSignalIconId=0x0 mDataTypeIconId=0x0 mQSDataTypeIconId=0x0 mWifiIconId=0x7f0200a9 mQSWifiIconId=0x7f02005d mBluetoothTetherIconId=0x10805d5
  187. 12-16 09:42:05.705: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  188. 12-16 09:42:05.835: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  189. 12-16 09:42:05.915: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  190. 12-16 09:42:05.945: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  191. 12-16 09:42:06.045: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  192. 12-16 09:42:06.325: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  193. 12-16 09:42:06.355: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  194. 12-16 09:42:06.385: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  195. 12-16 09:42:06.565: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  196. 12-16 09:42:06.765: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  197. 12-16 09:42:06.805: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  198. 12-16 09:42:07.075: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  199. 12-16 09:42:07.135: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  200. 12-16 09:42:07.275: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  201. 12-16 09:42:07.305: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  202. 12-16 09:42:07.475: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  203. 12-16 09:42:07.515: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  204. 12-16 09:42:07.545: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  205. 12-16 09:42:07.685: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  206. 12-16 09:42:07.715: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  207. 12-16 09:42:07.755: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  208. 12-16 09:42:08.025: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  209. 12-16 09:42:08.125: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  210. 12-16 09:42:08.395: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  211. 12-16 09:42:08.435: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  212. 12-16 09:42:08.465: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  213. 12-16 09:42:08.805: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  214. 12-16 09:42:08.845: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  215. 12-16 09:42:08.875: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  216. 12-16 09:42:08.905: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  217. 12-16 09:42:09.045: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  218. 12-16 09:42:09.075: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  219. 12-16 09:42:09.115: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  220. 12-16 09:42:09.145: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  221. 12-16 09:42:09.285: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  222. 12-16 09:42:09.325: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  223. 12-16 09:42:09.355: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  224. 12-16 09:42:09.525: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  225. 12-16 09:42:09.795: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  226. 12-16 09:42:09.825: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  227. 12-16 09:42:09.965: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  228. 12-16 09:42:10.035: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  229. 12-16 09:42:10.225: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  230. 12-16 09:42:10.275: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  231. 12-16 09:42:10.305: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  232. 12-16 09:42:10.435: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  233. 12-16 09:42:10.475: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  234. 12-16 09:42:10.545: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  235. 12-16 09:42:10.645: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  236. 12-16 09:42:10.675: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  237. 12-16 09:42:10.745: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  238. 12-16 09:42:10.885: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  239. 12-16 09:42:10.985: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  240. 12-16 09:42:11.225: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  241. 12-16 09:42:11.245: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  242. 12-16 09:42:11.295: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  243. 12-16 09:42:11.525: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  244. 12-16 09:42:11.665: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  245. 12-16 09:42:11.705: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  246. 12-16 09:42:11.735: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  247. 12-16 09:42:11.865: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  248. 12-16 09:42:11.905: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  249. 12-16 09:42:11.935: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  250. 12-16 09:42:11.975: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  251. 12-16 09:42:12.115: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  252. 12-16 09:42:12.145: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  253. 12-16 09:42:12.175: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  254. 12-16 09:42:12.345: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  255. 12-16 09:42:12.575: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  256. 12-16 09:42:12.795: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  257. 12-16 09:42:12.925: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  258. 12-16 09:42:12.955: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  259. 12-16 09:42:13.015: D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
  260. 12-16 09:42:13.025: I/AudioTrack(483): set() streamType 1 frameCount 0 flags 0004 channelMask 3 sampleRate 48000 format 1
  261. 12-16 09:42:13.025: I/AudioHardwareALSA(145): Audio exiting sandby will open audio device
  262. 12-16 09:42:13.045: I/ActivityManager(483): START u0 {act=com.android.systemui.recent.action.TOGGLE_RECENTS flg=0x10800000 cmp=com.android.systemui/.recent.RecentsActivity (has extras)} from pid 565
  263. 12-16 09:42:13.085: D/mali_winsys(565): new_window_surface returns 0x3000
  264. 12-16 09:42:13.105: I/ActivityManager(483): Displayed com.android.systemui/.recent.RecentsActivity: +60ms
  265. 12-16 09:42:13.105: D/CameraHal(145): commandThread(916): commandThread(916): receive CMD_PREVIEW_CAPTURE_CANCEL
  266. 12-16 09:42:13.105: D/CameraHal(145): commandThread(924): commandThread(924): CMD_PREVIEW_CAPTURE_CANCEL out
  267. 12-16 09:42:13.105: D/CameraHal(145): cancelPicture(523): cancel picture OK.
  268. 12-16 09:42:13.105: D/CameraHal(145): commandThread(844): commandThread(844):receive CMD_PREVIEW_STOP
  269. 12-16 09:42:13.105: D/CameraHal(145): displayThread(587): displayThread(587): receive CMD_DISPLAY_PAUSE
  270. 12-16 09:42:13.115: D/CameraHal(145): stopPreview(229): stopPreview(229):IN
  271. 12-16 09:42:13.115: D/CameraHal(145): cameraStream(488): cameraStream(488):on = 0
  272. 12-16 09:42:13.125: V/ALSAModule(145): SAMPLERATE:44100
  273. 12-16 09:42:13.125: D/ALSAModule(145): open called for devices 00000400 in mode 0...
  274. 12-16 09:42:13.125: D/ALSAModule(145): DevName: AndroidPlayback_Aux_normal
  275. 12-16 09:42:13.125: E/ALSAModule(145): buffersize: 6144, periodsize:2048
  276. 12-16 09:42:13.125: V/ALSAModule(145): Set PLAYBACK PCM format to S16_LE (Signed 16 bit Little Endian)
  277. 12-16 09:42:13.125: V/ALSAModule(145): Using 2 channels for PLAYBACK.
  278. 12-16 09:42:13.125: V/ALSAModule(145): Set PLAYBACK sample rate to 44100 HZ
  279. 12-16 09:42:13.125: E/ALSAModule(145): audio type flag: 0
  280. 12-16 09:42:13.125: V/ALSAModule(145): Buffer size: 6144(frames)  period Size: 2048(frames)  periods: 3 (buffersize=periodSize*periods)
  281. 12-16 09:42:13.125: V/ALSAModule(145): Latency: 139319   periodTime: 46439
  282. 12-16 09:42:13.185: D/ALSAModule(145): DumpHandleInfo:
  283. 12-16 09:42:13.185: D/ALSAModule(145): devices: 0xbfff
  284. 12-16 09:42:13.185: D/ALSAModule(145): format: 0x2
  285. 12-16 09:42:13.185: D/ALSAModule(145): channels: 2
  286. 12-16 09:42:13.185: D/ALSAModule(145): sampleRate: 44100
  287. 12-16 09:42:13.185: D/ALSAModule(145): latency: 139319
  288. 12-16 09:42:13.185: D/ALSAModule(145): periodSize:2048
  289. 12-16 09:42:13.185: D/ALSAModule(145): bufferSize:6144
  290. 12-16 09:42:13.185: V/ALSAModule(145): SAMPLERATE:44100
  291. 12-16 09:42:13.185: D/ALSAModule(145): open called for devices 00000800 in mode 0...
  292. 12-16 09:42:13.185: D/ALSAModule(145): DevName: AndroidPlayback_Spdif_normal
  293. 12-16 09:42:13.185: E/ALSAModule(145): buffersize: 6144, periodsize:2048
  294. 12-16 09:42:13.185: V/ALSAModule(145): Set PLAYBACK PCM format to S16_LE (Signed 16 bit Little Endian)
  295. 12-16 09:42:13.185: V/ALSAModule(145): Using 2 channels for PLAYBACK.
  296. 12-16 09:42:13.185: V/ALSAModule(145): Set PLAYBACK sample rate to 44100 HZ
  297. 12-16 09:42:13.185: E/ALSAModule(145): audio type flag: 0
  298. 12-16 09:42:13.185: V/ALSAModule(145): Buffer size: 6144(frames)  period Size: 2048(frames)  periods: 3 (buffersize=periodSize*periods)
  299. 12-16 09:42:13.185: V/ALSAModule(145): Latency: 139319   periodTime: 46439
  300. 12-16 09:42:13.185: D/ALSAModule(145): DumpHandleInfo:
  301. 12-16 09:42:13.185: D/ALSAModule(145): devices: 0xbfff
  302. 12-16 09:42:13.185: D/ALSAModule(145): format: 0x2
  303. 12-16 09:42:13.185: D/ALSAModule(145): channels: 2
  304. 12-16 09:42:13.185: D/ALSAModule(145): sampleRate: 44100
  305. 12-16 09:42:13.185: D/ALSAModule(145): latency: 139319
  306. 12-16 09:42:13.185: D/ALSAModule(145): periodSize:2048
  307. 12-16 09:42:13.185: D/ALSAModule(145): bufferSize:6144
  308. 12-16 09:42:13.275: D/CameraHal(145): stopPreview(249): stopPreview(249):OUT
  309. 12-16 09:42:13.275: D/CameraHal(145): commandThread(865): commandThread(865): CMD_PREVIEW_STOP out
  310. 12-16 09:42:13.275: D/CameraHal(145): stopPreview(324): stop preview OK.
  311. 12-16 09:42:13.275: D/CameraHal(145): commandThread(916): commandThread(916): receive CMD_PREVIEW_CAPTURE_CANCEL
  312. 12-16 09:42:13.275: D/CameraHal(145): commandThread(924): commandThread(924): CMD_PREVIEW_CAPTURE_CANCEL out
  313. 12-16 09:42:13.275: D/CameraHal(145): cancelPicture(523): cancel picture OK.
  314. 12-16 09:42:13.275: D/CameraHal(145): commandThread(844): commandThread(844):receive CMD_PREVIEW_STOP
  315. 12-16 09:42:13.275: D/CameraHal(145): stopPreview(229): stopPreview(229):IN
  316. 12-16 09:42:13.285: D/CameraHal(145): stopPreview(249): stopPreview(249):OUT
  317. 12-16 09:42:13.285: D/CameraHal(145): stopPreview(324): stop preview OK.
  318. 12-16 09:42:13.285: D/CameraHal(145): commandThread(865): commandThread(865): CMD_PREVIEW_STOP out
  319. 12-16 09:42:13.285: D/CameraHal(145): commandThread(870): commandThread(870):receive CMD_SET_PREVIEW_WINDOW
  320. 12-16 09:42:13.285: D/CameraHal(145): pauseDisplay(148): pauseDisplay(148): display thread is already stop
  321. 12-16 09:42:13.285: D/CameraHal(145): commandThread(886): commandThread(886): CMD_SET_PREVIEW_WINDOW out
  322. 12-16 09:42:13.285: I/CameraClient(145): Destroying camera 0
  323. 12-16 09:42:13.285: D/CameraHal(145): camera_device_close(444): camera_device_close
  324. 12-16 09:42:13.285: D/CameraHal(145): displayThread(599): displayThread(599): receive CMD_DISPLAY_STOP
  325. 12-16 09:42:13.285: D/CameraHal(145): cameraDisplayBufferDestory(376): cameraDisplayBufferDestory(376): mANativeWindow is NULL, destory is ignore
  326. 12-16 09:42:13.285: D/CameraHal(145): encProcessThread(1204): encProcessThread(1204): receive CMD_ENCPROCESS_EXIT
  327. 12-16 09:42:13.295: I/vpu_mem_pool(145): pid 145, close_vpu_memory_pool:475: vpu memory pool size (720000)
  328. 12-16 09:42:13.295: I/vpu_mem_pool(145): pid 145, close_vpu_memory_pool:475: vpu memory pool size (640000)
  329. 12-16 09:42:13.295: I/vpu_mem_pool(145): pid 145, close_vpu_memory_pool:475: vpu memory pool size (560000)
  330. 12-16 09:42:13.295: I/vpu_mem_pool(145): pid 145, close_vpu_memory_pool:475: vpu memory pool size (480000)
  331. 12-16 09:42:13.295: I/vpu_mem_pool(145): pid 145, close_vpu_memory_pool:475: vpu memory pool size (400000)
  332. 12-16 09:42:13.295: I/vpu_mem_pool(145): pid 145, close_vpu_memory_pool:475: vpu memory pool size (320000)
  333. 12-16 09:42:13.295: I/vpu_mem_pool(145): pid 145, close_vpu_memory_pool:475: vpu memory pool size (240000)
  334. 12-16 09:42:13.295: I/vpu_mem_pool(145): pid 145, close_vpu_memory_pool:475: vpu memory pool size (160000)
  335. 12-16 09:42:13.295: I/vpu_mem_pool(145): pid 145, close_vpu_memory_pool:475: vpu memory pool size (80000)
  336. 12-16 09:42:13.295: I/vpu_mem_pool(145): pid 145, close_vpu_memory_pool:475: vpu memory pool size (0)
  337. 12-16 09:42:13.295: I/vpu_mem_pool(145): pid 145, close_vpu_memory_pool:526:
  338. 12-16 09:42:13.295: D/CameraHal(145): autofocusThread(812): wait out
  339. 12-16 09:42:13.295: D/CameraHal(145): commandThread(1017): commandThread(1017): receive CMD_EXIT
  340. 12-16 09:42:13.295: D/CameraHal(145): ~CameraHal(255): CameraHal destory success
复制代码




作者: linjc    时间: 2014-12-16 16:45
楼主用的是什么摄像头啊?
作者: yaolunlun    时间: 2014-12-16 17:46
linjc 发表于 2014-12-16 16:45
楼主用的是什么摄像头啊?

我们买的摄像头模组,里面的camera sensor是镁光AR0130的。用我们之前的RK3066的板子获取视频没问题。
作者: zhansb    时间: 2014-12-17 16:49
yaolunlun 发表于 2014-12-16 17:46
我们买的摄像头模组,里面的camera sensor是镁光AR0130的。用我们之前的RK3066的板子获取视频没问题。

试过罗技的C170和C930,没有楼主说的问题哦{:3_58:}
USB摄像头的型号用的是什么?
作者: yaolunlun    时间: 2014-12-18 12:00
zhansb 发表于 2014-12-17 16:49
试过罗技的C170和C930,没有楼主说的问题哦
USB摄像头的型号用的是什么?

没权限发URL链接呢,用的锐尔威视的130万像素USB模组,产品型号USB130WO1MT

作者: bunchen    时间: 2014-12-18 15:27
楼主的花屏是什么现象,是录像变成全绿色吗?
作者: bunchen    时间: 2014-12-18 16:03
楼主在录像时切换一下录像的分辨率,看看其他分辨率录像会不会花屏。
作者: yaolunlun    时间: 2014-12-19 14:58
bunchen 发表于 2014-12-18 16:03
楼主在录像时切换一下录像的分辨率,看看其他分辨率录像会不会花屏。

支持的其他分辨率(640x480等)都试过了,都是花屏(图像横向交错,能大概看到视频轮廓)。
另外发现,我在用自带的程序Camera,拍照时,拍出来的是全绿色,再次点击拍照,系统就会崩溃重启!
作者: yaolunlun    时间: 2014-12-19 16:00
本帖最后由 yaolunlun 于 2014-12-19 17:54 编辑
bunchen 发表于 2014-12-18 16:03
楼主在录像时切换一下录像的分辨率,看看其他分辨率录像会不会花屏。

好像是在jpeg硬解码时出的问题:
  1. D/jpeghw(145): TB: jpeg API returned : JPEGDEC_STRM_ERROR
复制代码

下面是摄像头输出的原始jpeg图像(从CameraHal获取frame后得到),麻烦工程师分析一下,是不是格式不对?还是jpeghw库兼容问题?


作者: bunchen    时间: 2014-12-20 11:34
yaolunlun 发表于 2014-12-19 14:58
支持的其他分辨率(640x480等)都试过了,都是花屏(图像横向交错,能大概看到视频轮廓)。
另外发现, ...

看来跟分辨率没关系,我觉得应该跟数据的frame format 像素格式有关。楼主可以试一下这里:
hardware/rk29/camera/CameraHal/CameraUSBAdapter.cpp

  1. //define  the frame info ,such as w, h ,fmt
  2. int CameraUSBAdapter::reprocessFrame(FramInfo_s* frame)
  3. {
  4.     int ret = 0;
  5.     //  usb camera may do something
  6.            #if (IOMMU_ENABLED == 1)
  7.     int phy_addr = mPreviewBufProvider->getBufShareFd(frame->frame_index);
  8.     #else
  9.     int phy_addr = mPreviewBufProvider->getBufPhyAddr(frame->frame_index);
  10.     #endif
  11.     if( frame->frame_fmt == V4L2_PIX_FMT_MJPEG){
  12.                char *srcbuf = frame->vir_addr;
  13.                if((srcbuf[0] == 0xff) && (srcbuf[1] == 0xd8) && (srcbuf[2] == 0xff)){
  14.         //decoder to NV12
  15.         VPU_FRAME outbuf;
  16.         unsigned int output_len;
  17.         unsigned int input_len;
  18.         output_len = 0;
  19.         input_len = frame->frame_size;

  20.         ret = mMjpegDecoder.decode(mMjpegDecoder.decoder,
  21.                                     (unsigned char*)&outbuf, &output_len,
  22.                                               (unsigned char*)frame->vir_addr, &input_len,
  23.                                               phy_addr);
  24.         if (ret < 0){
  25.             LOGE("%s(%d): mjpeg stream is error!",__FUNCTION__,__LINE__);
  26.                 }
  27.             }else{
  28.                             LOGE("mjpeg data error!!");
  29.                             return -1;
  30.         }
  31.     }else if(frame->frame_fmt == V4L2_PIX_FMT_YUYV){

  32.         ret = cameraFormatConvert(V4L2_PIX_FMT_YUYV, V4L2_PIX_FMT_NV12, NULL,
  33.                                                          (char*)frame->vir_addr, (char*)mPreviewBufProvider->getBufVirAddr(frame->frame_index),
  34.                                                          0,0,frame->frame_size,
  35.                                                          frame->frame_width, frame->frame_height, frame->frame_width,
  36.                                                          frame->frame_width, frame->frame_height, frame->frame_width,
  37.                                                          false);
  38.         if (ret < 0){
  39.             LOGE("%s(%d): yuyv convert to nv12 error!",__FUNCTION__,__LINE__);
  40.         }

  41.     }else{
  42.         LOGE("camerahal not support this format %d",frame->frame_fmt);
  43.         ret =  -1;
  44.     }

  45.     frame->frame_fmt = V4L2_PIX_FMT_NV12;
  46.     frame->phy_addr = phy_addr;
  47.     frame->vir_addr = mPreviewBufProvider->getBufVirAddr(frame->frame_index);
  48.     frame->zoom_value = mZoomVal;
  49.        
  50.         int w,h;
  51.         w = frame->frame_width;
  52.         h = frame->frame_height;
  53.         if((w&0x0f) || (h&0x0f)){
  54.                 char *buf = malloc(w*h*3/2);
  55.                 if(buf != NULL){
  56.                         memcpy(buf,frame->vir_addr,w*h);
  57.                         memcpy(buf+w*h,frame->vir_addr+((w+15)&0xfff0)*((h+15)&0xfff0), w*h/2);
  58.                         memcpy(frame->vir_addr,buf,w*h*3/2);
  59.                         free(buf);
  60.                 }
  61.         }

  62.     //do zoom here?
  63.     return ret;
  64.    
  65. }
复制代码


这个函数里面好像要处理不同的像素格式的。
作者: bunchen    时间: 2014-12-20 11:35
yaolunlun 发表于 2014-12-19 14:58
支持的其他分辨率(640x480等)都试过了,都是花屏(图像横向交错,能大概看到视频轮廓)。
另外发现, ...

看来跟分辨率没关系,我觉得应该跟数据的frame format 像素格式有关。楼主可以试一下这里:
hardware/rk29/camera/CameraHal/CameraUSBAdapter.cpp

  1. //define  the frame info ,such as w, h ,fmt
  2. int CameraUSBAdapter::reprocessFrame(FramInfo_s* frame)
  3. {
  4.     int ret = 0;
  5.     //  usb camera may do something
  6.            #if (IOMMU_ENABLED == 1)
  7.     int phy_addr = mPreviewBufProvider->getBufShareFd(frame->frame_index);
  8.     #else
  9.     int phy_addr = mPreviewBufProvider->getBufPhyAddr(frame->frame_index);
  10.     #endif
  11.     if( frame->frame_fmt == V4L2_PIX_FMT_MJPEG){
  12.                char *srcbuf = frame->vir_addr;
  13.                if((srcbuf[0] == 0xff) && (srcbuf[1] == 0xd8) && (srcbuf[2] == 0xff)){
  14.         //decoder to NV12
  15.         VPU_FRAME outbuf;
  16.         unsigned int output_len;
  17.         unsigned int input_len;
  18.         output_len = 0;
  19.         input_len = frame->frame_size;

  20.         ret = mMjpegDecoder.decode(mMjpegDecoder.decoder,
  21.                                     (unsigned char*)&outbuf, &output_len,
  22.                                               (unsigned char*)frame->vir_addr, &input_len,
  23.                                               phy_addr);
  24.         if (ret < 0){
  25.             LOGE("%s(%d): mjpeg stream is error!",__FUNCTION__,__LINE__);
  26.                 }
  27.             }else{
  28.                             LOGE("mjpeg data error!!");
  29.                             return -1;
  30.         }
  31.     }else if(frame->frame_fmt == V4L2_PIX_FMT_YUYV){

  32.         ret = cameraFormatConvert(V4L2_PIX_FMT_YUYV, V4L2_PIX_FMT_NV12, NULL,
  33.                                                          (char*)frame->vir_addr, (char*)mPreviewBufProvider->getBufVirAddr(frame->frame_index),
  34.                                                          0,0,frame->frame_size,
  35.                                                          frame->frame_width, frame->frame_height, frame->frame_width,
  36.                                                          frame->frame_width, frame->frame_height, frame->frame_width,
  37.                                                          false);
  38.         if (ret < 0){
  39.             LOGE("%s(%d): yuyv convert to nv12 error!",__FUNCTION__,__LINE__);
  40.         }

  41.     }else{
  42.         LOGE("camerahal not support this format %d",frame->frame_fmt);
  43.         ret =  -1;
  44.     }

  45.     frame->frame_fmt = V4L2_PIX_FMT_NV12;
  46.     frame->phy_addr = phy_addr;
  47.     frame->vir_addr = mPreviewBufProvider->getBufVirAddr(frame->frame_index);
  48.     frame->zoom_value = mZoomVal;
  49.        
  50.         int w,h;
  51.         w = frame->frame_width;
  52.         h = frame->frame_height;
  53.         if((w&0x0f) || (h&0x0f)){
  54.                 char *buf = malloc(w*h*3/2);
  55.                 if(buf != NULL){
  56.                         memcpy(buf,frame->vir_addr,w*h);
  57.                         memcpy(buf+w*h,frame->vir_addr+((w+15)&0xfff0)*((h+15)&0xfff0), w*h/2);
  58.                         memcpy(frame->vir_addr,buf,w*h*3/2);
  59.                         free(buf);
  60.                 }
  61.         }

  62.     //do zoom here?
  63.     return ret;
  64.    
  65. }
复制代码


这个函数里面好像要处理不同的像素格式的。
作者: yaolunlun    时间: 2014-12-22 14:43
本帖最后由 yaolunlun 于 2014-12-22 14:46 编辑
bunchen 发表于 2014-12-20 11:35
看来跟分辨率没关系,我觉得应该跟数据的frame format 像素格式有关。楼主可以试一下这里:
hardware/rk ...

谢谢你的帮忙。这些都仔细看过了,也做了一些测试。
现在深度怀疑是VPU库硬解jpeg的兼容问题,麻烦版主能确认一下!
作者: yaolunlun    时间: 2014-12-23 09:25
zhansb 发表于 2014-12-17 16:49
试过罗技的C170和C930,没有楼主说的问题哦
USB摄像头的型号用的是什么?

请问,你们能提供VPU库的源码吗?或者你们是否能支持我这种摄像头jpeg编码格式?
作者: bunchen    时间: 2014-12-24 09:43
yaolunlun 发表于 2014-12-23 09:25
请问,你们能提供VPU库的源码吗?或者你们是否能支持我这种摄像头jpeg编码格式?

VPU库是系统中很重要的库,rk平台并不希望我们擅自修改而产生其他问题,所以rk平台并未对VPU库开源。建议楼主在传数据给VPU硬解前先适当处理一下数据。
作者: yaolunlun    时间: 2014-12-29 10:58
我最后通过libjpeg把摄像头输出的格式转换成JFIF格式后,能正常显示视频了。但是效率不好。这不是解决问题的根本办法。
还是希望能改进VPU库!:Q




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1