Opened 6 years ago

Closed 6 years ago

Last modified 6 years ago

#1762 closed enhancement (fixed)

Update iOS video capture and simple renderer

Reported by: nanang Owned by: ming
Priority: normal Milestone: release-2.3
Component: pjmedia-videodev Version: trunk
Keywords: Cc:
Backport to 1.x milestone: Backported: no

Description

iOS video capture and simple renderer were actually already implemented, however it has not been maintained nor tested for long time due to lack of video support on iOS. This ticket will check and update the implementations.

Some additional features planned on the capture device implementation:

  • native preview
  • enumerate all available capture devices, e.g: front and back camera
  • fast switch between capture devices

The simple renderer is a CGImage+UIView based renderer.

Change History (10)

comment:1 Changed 6 years ago by nanang

In 4824:

Re #1762:

  • enumerate all capture devices
  • fast switch between capture devices
  • enhance simple renderer (a bit simpler, add capabilities)

comment:2 Changed 6 years ago by ming

In 4834:

Re #1762: Add capability enumerations and native preview capability

comment:3 Changed 6 years ago by nanang

In 4836:

Re #1762: Add I420/IYUV output format to capture devices.

comment:4 Changed 6 years ago by nanang

In 4837:

Re #1762: Fix native preview not shown issue by starting capture session from main thread.

comment:5 Changed 6 years ago by nanang

  • Resolution set to fixed
  • Status changed from new to closed

comment:6 Changed 6 years ago by nanang

In 4838:

Re #1762: Support more capture sizes (was only 352x288) and automatically find the closest supported size from the requested size.

comment:7 Changed 6 years ago by nanang

In 4853:

Re #1762: Fixed native preview cannot be stopped.

comment:8 Changed 6 years ago by ming

In 4891:

Re #1762: Related to r4838, check whether the device supports the capture size before deciding to use it

comment:9 Changed 6 years ago by riza

In 4902:

Re #1762: Change alloc method for preview layer that may cause crash when releasing the object on iOS 7 (arm64).

comment:10 Changed 6 years ago by riza

In 4909:

Re #1762: When capturing, image stride is not always equal to the image width. I.e on Ipad air, at 352*288 the image stride is 384. Additional discard process is
needed to correct the image rendered.

Note: See TracTickets for help on using tickets.