aura_sphere_360 2.0.1 copy "aura_sphere_360: ^2.0.1" to clipboard
aura_sphere_360: ^2.0.1 copied to clipboard

Immersive 360° panorama and video viewer for Flutter. Display spherical images and videos with touch controls, sensor controls, and smooth 30 FPS playback. Perfect for VR experiences and 360° media.

2.0.1 #

  • FIX: Updated webrtc_pixel_stream to 0.1.1 - fixes red/blue channel swap in WebRTC frames

2.0.0 Native Pixel Extraction #

  • BREAKING: Native video/WebRTC extraction replaces RepaintBoundary.toImage()
    • Eliminates GPU→CPU readback that blocked the main thread on iOS
    • Video: AVPlayerItemVideoOutput extracts BGRA frames on a background thread
    • WebRTC: webrtc_pixel_stream companion plugin streams raw frames via EventChannel
    • Both paths deliver pixels via EventChannel → decodeImageFromPixels (engine IO thread)
  • NEW: videoUrl parameter - Pass a URL string for native video extraction
  • NEW: useNativeExtraction parameter - Toggle native vs legacy path (default: true)
  • NEW: webrtcTrackId / webrtcPeerConnectionId parameters for native WebRTC
  • Backward compatible: Set useNativeExtraction: false to use the legacy path
  • Dependencies: Added webrtc_pixel_stream ^0.1.0

1.1.0 Phase 4: WebRTC Support #

  • NEW: WebRTC Live Streaming - Stream live 360° video via WebRTC
    • Added webrtcRenderer parameter to PanoramaViewer
    • Support for RTCVideoRenderer from flutter_webrtc
    • Real-time 360° video streaming at 30 FPS
    • Works with any WebRTC source (local camera, remote peers)
    • Same touch and sensor controls as video playback
    • Automatic frame extraction using RepaintBoundary
  • API Enhancement: Source validation
    • Only one source allowed (child, videoPlayerController, or webrtcRenderer)
    • Clear error messages for invalid configurations
  • Example: Added WebRTC live streaming example
    • Demonstrates local camera stream in 360°
    • Shows connection state management
    • Includes UI controls and status indicators
  • Documentation: Updated README with WebRTC usage
  • Dependencies: Added flutter_webrtc ^0.11.7

1.0.1 Bug Fix Release #

  • FIXED: Video initial frame white screen bug
    • Fixed race condition where panorama rendered before first video frame was captured
    • Video now displays first frame immediately on playback start
    • Affects file picker videos, network videos, and asset videos
    • Added frame dimension validation and fallback dimensions
    • Added debug logging for troubleshooting

1.0.0 Initial Release #

  • NEW: Aura Sphere 360 - Complete 360° panorama and video viewer
    • Display 360° images with touch and sensor controls
    • Play 360° videos with smooth 30 FPS playback
    • Support for local files, network URLs, and asset videos
    • Full touch controls (pan, zoom, rotate)
    • Sensor controls (gyroscope) for immersive experience
    • Auto-scaling for videos larger than 1920x1080
    • Cross-platform support (iOS, Android, Web)
  • Architecture: Clean texture provider abstraction
    • Separate providers for images and videos
    • Easy to extend for future sources
  • Dependencies: Built on flutter_cube, dchs_motion_sensors, video_player
  • Documentation: Comprehensive guides and examples
  • Tested: iOS device tested and working

Previous Versions (as panorama_viewer) #

2.0.7 #

  • Fixed black screen issue introduced in v2.0.6.
  • Corrected scene initialization check (surface == null) to restore compatibility.

2.0.6 #

  • Minor format updates

2.0.5 #

  • Minor updates to the code
  • Merge #PR22 thank you to @StefanosKouzounis
    • Updated the description in pubspec.yaml to fix Failed report section
    • Follow Dart file conventions in pub.dev
    • Implemented null-aware operators and added null checks to prevent potential runtime crashes.

2.0.4 #

  • Merge #PR19, #PR20. Use of controller instead of flags thank you to @Henk-Keijzer
  • Minor updates to the code

2.0.3 #

  • update dchs_motion_sensors to 2.0.1 for latest version of Flutter (3.29.0)

2.0.2 #

  • Reintroduced sensor controls for iOS and Android.

2.0.1 #

  • Added initial web support without sensors (since dchs_motion_sensors is not implemented for the web).
  • Works well on macOS, Windows, and iOS. However, on some Android devices, WebGL errors may occur if the panorama image is too large.

2.0.0 #

  • update dchs-motion sensor to 2.0.0
  • update sdk environment to 3.5.*
  • update flutter_lints to 5.0.0
  • change build gradle for recommended plugin usage
  • update gradle to 8.3

1.0.6 #

  • Fixed an issue where re-rendering the Panorama resulted in a blank screen. Thanks to @ewanAtPropertyMe for the fix.

1.0.5 #

  • updated dchs_motion_sensors to 1.1.0
  • updated examples

1.0.4 #

  • updates to make the movement smooth thank you to @Henk-Keijzer
  • added setAnimSpeed(double newSpeed) thank you to @Henk-Keijzer

1.0.3 #

  • separate examples. simple, simple with transparent app bar, full, and one with external controls
  • added two new methods to control zoom and position with external buttons and slided. Added also an example on how to use
  • solve the Longitude and latitude initialization #2 (porting from PRs in original repo)

1.0.2 #

  • bug fixing for iOS, updated dependencies (dchs_motion_sensors 1.0.2)

1.0.1 #

1
likes
140
points
222
downloads

Publisher

unverified uploader

Weekly Downloads

Immersive 360° panorama and video viewer for Flutter. Display spherical images and videos with touch controls, sensor controls, and smooth 30 FPS playback. Perfect for VR experiences and 360° media.

Repository (GitHub)
View/report issues

Documentation

API reference

License

Apache-2.0 (license)

Dependencies

dchs_motion_sensors, flutter, flutter_cube, flutter_webrtc, video_player, webrtc_pixel_stream

More

Packages that depend on aura_sphere_360