Video Rotation - themactep/thingino-firmware GitHub Wiki

Video rotation is a software-based feature available in Thingino with limited platform support. Currently, rotation functionality is only available on T31 platform devices.

Platform Support

  • T31 - Supported (Limited)
  • Xburst 2 - Planned future support
  • Others - Not supported

Note: Full support is planned for Xburst 2 targets in the future.

Configuration

Video rotation can be manually enabled by editing the Prudynt configuration file. Rotation configuration is not currently supported in the Web-UI.

Configuration Parameters

rotation
  Default: 0
  Options: 
    - 0: No rotation
    - 1: 90 degrees clockwise
    - 2: 270 degrees clockwise (90 degrees counter-clockwise)
  Description: Software rotation of the video stream

⚠️ Important: Rotation is ONLY supported on T31 platform

Technical Requirements

Memory Requirements

  • Video rotation is performed in software by the Ingenic libimp library
  • Increased RMEM required: You must increase rmem allocation to accommodate the rotation processing
  • Minimum RAM: Rotation does not perform well on SoCs with less than 128MB of memory

Resolution Alignment

  • The rotated resolution must be 16-bit aligned
  • This alignment requirement is critical for proper operation

180-Degree Rotation (hflip + vflip)

For a 180-degree rotation (e.g., mounting the camera upside down), combine both horizontal and vertical flip. This applies to all platforms, not just T31:

jct /etc/prudynt.json set stream0.hflip true
jct /etc/prudynt.json set stream0.vflip true
service restart prudynt

Both hflip and vflip are boolean fields under each stream section in prudynt.json.

Limitations

  1. Software-based rotation (not hardware accelerated)
  2. Increased memory consumption
  3. Performance impact on lower-spec devices
  4. Rotation (0/1/2) limited to T31 platform currently
  5. Rotation (0/1/2) not recommended for devices with < 128MB RAM
  6. hflip + vflip (180-degree) works on all platforms with minimal overhead