awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
LuckSiege avatar

LuckSiege/PictureSelector

0
View on GitHub↗
13,592 stars·3,117 forks·Java·Apache-2.0·19 views

PictureSelector

PictureSelector is an Android media selection library and toolkit for browsing and picking images, videos, and audio files from a device album. It provides a comprehensive framework for capturing new photos and videos via system hardware, extracting media metadata, and managing the resulting files.

The library features a modular architecture that allows for custom media engine implementations to replace default image loading, file compression, and video playback logic. It offers extensive UI customization, enabling the replacement of default layout resources and theme configurations to modify the visual appearance and structure of the selection interface.

The project covers a broad range of media processing capabilities, including aspect ratio cropping, file size compression, and dimension calculation. It also includes utilities for permission management across different operating system versions, mime-type based asset filtering, and sandbox URI mapping to resolve accessible file paths.

Features

  • Media Selection Interfaces - Provides a complete mobile user interface for browsing and picking single or multiple images and videos from the device album.
  • Android Media Selection - Provides a specialized library for picking images, videos, and audio files from the Android device album.
  • Media Metadata Querying - Enables extraction of album and media metadata directly from the Android device data source.
  • Media Asset MIME Filters - Filters device media queries by matching specific file extensions and metadata to restrict selectable content.
  • Live Capture and Recording - Integrates with the camera and microphone to create photos, videos, and audio recordings within the application.
  • Android Media Frameworks - Implements a framework for cropping, compressing, and resolving file paths for Android media.
  • API-Level Path Resolution Strategies - Determines the correct file retrieval method by checking the device API level and current configuration settings.
  • Camera Integrations - Integrates with device camera hardware to capture new photos and videos via foreground services.
  • Sandbox URI to Path Mappers - Converts restricted system URIs into accessible local file paths by copying resources to a dedicated internal directory.
  • Media Path Resolution - Resolves absolute, compressed, or cropped file paths according to the device's Android API level and configuration.
  • URI to Path Mapping - Transforms restricted sandbox URIs into accessible local file paths by copying assets to a dedicated internal directory.
  • Interface Layout Customization - Enables replacing default layout resources for screens and grids with custom design files to change the selection interface structure.
  • Interface Appearance Customizations - Allows changing the visual look of the selection interface using theme configurations or layout resources.
  • Theming and Layouts - Allows replacing default XML layout files and theme configurations to customize the visual appearance of selection screens.
  • Custom Select Styling - Provides the ability to modify colors, fonts, and backgrounds for the selection interface and navigation components.
  • Custom Loading and Caching Logic - Implements a modular architecture to replace default device scanning with custom media loading engines.
  • Media Selection Filters - Provides granular filtering of media assets by mime type, file size, and duration to ensure compatible selections.
  • Custom Media Processing Engines - Allows replacing default image loading, file compression, and video playback logic with custom engine implementations.
  • Media Selection Previews - Includes a preview interface for images, videos, and audio files to help users verify media before selection.
  • Basic Media Editing - Allows users to preview media in full screen and apply basic modifications like cropping and watermarking.
  • Media Aspect Ratio Croppers - Trims images to specific aspect ratios and saves the output to a designated directory.
  • Media Asset Resizing - Provides utilities for cropping, compressing, and resizing images and videos to optimize file sizes.
  • Media Cropping and Compression Toolkits - Trims images to specific dimensions and applies file compression to optimize asset size.
  • Process-Level Recording Stability - Captures photos and videos using system hardware while maintaining process stability via foreground services.
  • File Compression - Reduces the file size of chosen images or videos using a custom compression engine.
  • Custom Camera Capture Activities - Replaces the default camera activity with a custom implementation to control the capture and save processes.
  • Foreground Service Capture Stability - Uses foreground services to maintain process stability while the device hardware records high-resolution photos and videos.
  • Media Access Permissions - Manages storage and camera access requests across various Android versions to ensure secure media access.
  • Permission Interception Listeners - Provides a mechanism to override default system permission flows using custom listener interfaces for verification and request logic.
  • Abstract Engine Interfaces - Implements abstract engine interfaces to allow interchangeable modules for image loading, compression, and video playback.
  • Customizable UI Components - Provides a modular selection interface with support for custom layout resources and theme configurations.
  • Media Galleries - Offers a customizable media gallery interface with support for tailored layouts, themes, and styling.
  • Image Display and Processing - Multi-image selection and upload library.

Star history

Star history chart for lucksiege/pictureselectorStar history chart for lucksiege/pictureselector

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to PictureSelector

Similar open-source projects, ranked by how many features they share with PictureSelector.
  • crazycodeboy/takephotocrazycodeboy avatar

    crazycodeboy/TakePhoto

    7,230View on GitHub↗

    TakePhoto is an Android media capture framework and image processing library designed to manage photo acquisition and manipulation. It provides a toolkit for capturing new images via the device camera and selecting existing images from the system gallery or local file storage. The framework distinguishes itself through automatic activity and session state restoration, which recovers the capture process after the system recycles an activity. It also includes a unified handler for managing runtime media permissions for camera and storage access across different Android versions. The library co

    Javaandroidandroid-croppercamera
    View on GitHub↗7,230
  • longitachi/zlphotobrowserlongitachi avatar

    longitachi/ZLPhotoBrowser

    4,989View on GitHub↗

    ZLPhotoBrowser is a mobile image picker library that provides a media gallery interface for selecting photos, videos, and GIFs from a device library. It implements interaction patterns common to social messaging platforms and includes localized support for global users. The library features an integrated camera workflow for capturing new photos and videos directly within the selection process. It also includes an in-app media editor with tools for cropping, drawing, and applying filters to content before it is finalized. The project covers media gallery management, allowing users to organize

    Swifteditimageeditvideogallery
    View on GitHub↗4,989
  • ivpusic/react-native-image-crop-pickerivpusic avatar

    ivpusic/react-native-image-crop-picker

    6,349View on GitHub↗

    react-native-image-crop-picker is a cross-platform mobile image picker for selecting, cropping, and capturing images and videos from a device gallery or camera. It serves as a bridge to access the mobile camera and photo library to upload media files into an application. The library provides integrated tools for media cropping and compression, allowing images to be resized to specific dimensions or aspect ratios. It supports a unified workflow where images can be cropped immediately during the selection process. Capability areas include camera media capture, gallery media selection for singl

    Objective-C
    View on GitHub↗6,349
  • arthurhub/android-image-cropperArthurHub avatar

    ArthurHub/Android-Image-Cropper

    6,418View on GitHub↗

    Android-Image-Cropper is an image cropping library for Android applications designed to trim and resize photos sourced from cameras or galleries. It functions as a bitmap manipulation tool capable of rotating, flipping, and scaling images to achieve specific dimensions. The library features an aspect ratio constrained cropper that limits the cropping window to fixed shapes or ratios to ensure consistent image output. It handles orientation adjustments by reading embedded metadata to automatically rotate or flip images during the cropping process. The toolkit covers a broad range of image pro

    Javaandroidandroid-image-croppercropper
    View on GitHub↗6,418
See all 30 alternatives to PictureSelector→

Frequently asked questions

What does lucksiege/pictureselector do?

PictureSelector is an Android media selection library and toolkit for browsing and picking images, videos, and audio files from a device album. It provides a comprehensive framework for capturing new photos and videos via system hardware, extracting media metadata, and managing the resulting files.

What are the main features of lucksiege/pictureselector?

The main features of lucksiege/pictureselector are: Media Selection Interfaces, Android Media Selection, Media Metadata Querying, Media Asset MIME Filters, Live Capture and Recording, Android Media Frameworks, API-Level Path Resolution Strategies, Camera Integrations.

What are some open-source alternatives to lucksiege/pictureselector?

Open-source alternatives to lucksiege/pictureselector include: crazycodeboy/takephoto — TakePhoto is an Android media capture framework and image processing library designed to manage photo acquisition and… longitachi/zlphotobrowser — ZLPhotoBrowser is a mobile image picker library that provides a media gallery interface for selecting photos, videos,… ivpusic/react-native-image-crop-picker — react-native-image-crop-picker is a cross-platform mobile image picker for selecting, cropping, and capturing images… arthurhub/android-image-cropper — Android-Image-Cropper is an image cropping library for Android applications designed to trim and resize photos sourced… banchichen/tzimagepickercontroller — TZImagePickerController is an image picker controller for iOS that provides a gallery interface for browsing and… jeasonlzy/imagepicker — ImagePicker is a mobile image picker library that provides a user interface for selecting, rotating, and cropping…