Repository navigation
Releases: denglerchr/MediaHub_OSS
Release list
v3.2.0
What's Changed
- OIDC by @denglerchr in #12
- Coordinate fields by @denglerchr in #13
Full Changelog: v3.1.0...v3.2.0
v3.1.0
Full Changelog: v3.0.0...v3.1.0
Features:
- add Postgres and S3 connectors
Improvements:
- improved entry upload, enabling multi-file uploads from mobile devices
- improved touch screen support for selecting files
- improved preview querying and caching
- default to 0 days max age for new databases instead of 365 days
- add Docusaurus docs
Bug fixes:
- fix storage not being cleaned when deleting full database
- fix missing timestamp in JSON inserting timestamp far in the past
- fix time display for timestamp <1970
- fix export not including media fields
- multiple minor bug fixes, mainly issues found through LLM analysis
v3.0.0
Features:
- allow retrieving entries by
created_atorupdated_atinstead oftimestamp - add API-Key management with service accounts
- add
can_adminrole on database level, to allow standard users to manage database settings
Improvements:
- remove audit log button if audit logs not available/not stored in DB
- frontend complete rework:
- fullscreen entry dashboard, with improved tiling
- light mode
- home dashbord showing databases, instead of in the sidebar
- new page and modals for API key management
- new page for user settings
- new icons and logo
- improve middleware performance
Bug fixes:
- correctly index custom fields
- do not show content above header in profile page anymore
Breaking Changes:
- user id are now ULID instead of simple integers
- user endpoints to use path parameter instead of query parameter
- preview generation now clipping aspect ratios for stretched images
v2.1.0
Bug fixes:
- fix lookup for expired refresh token
Features:
- add entry queuing and processing limits, to avoid server resource starvation. New config arguments:
server.processing.n_ffmpeg_asyncandserver.processing.n_ffmpeg_total.n_max_queuedparameter on database level. - allow adding, renaming and deleting custom fields after database creation.
- add option to not index custom field columns via
is_indexed=false. - automatically extract timestamp from certain file format in the frontend
- allow drag and drop of multiple files at once in the frontend
- modernize entry grid view with tiling
- adjust preview generation to clip aspect ration, for frontend alignment
v2.0.1
v2.0.1
Bug Fixes:
- fix display of wrong timestamp in entry list view
Improvements:
- add font scaling for small screens
- add https as possible swagger schema
v2.0.0
v2.0.0
Feature cleanup
- use ULIDs for database identification, allowing to rename the database
- export previews as well, add import functionality
- improve frontend for mobile devices
- add avif image format target
Bug fixes:
- docker container does not require
init_config.tomlanymore - fix housekeeping timestamp assignment
- fix sidebar not loading version info
Full Changelog: v1.2.0...v2.0.0
v2.0.0-beta1
Features:
- add video file support
- add fullscreen playback to frontend
- user roles now on database level
Breaking Changes:
- all timestamps are now stored with millisecond precision
- entry and database endpoint paths changed to use path variables
- files are now stored in folders by
idrather than bydate - database schema changed significantly
- running the server now requires the
servecommand - configuration file has renamed configs
- renamed environment variable prefix from
FDB_toMEDIAHUB_
Other:
- publish multiarch docker build (ARM64, X86)
- add Windows ARM64 binaries to release
Full Changelog: v1.2.0...v2.0.0-beta1
v1.2.0
Features:
- make the "large file" threshold configurable.
- implement database schema versions to enable migrations in the future.
- implement a "recovery" command, for database consistency checks after, e.g., a server crash
- implement auditor logging, which has to be enabled explicitly
- implement bulk delete and bulk download functionalities
Bug fixes:
- fix swagger documentation not being up to date
- fix filename and status fields not being whitelisted in the search endpoint
What's Changed
- V1.2 by @denglerchr in #7
Full Changelog: v1.1.0...v1.2.0
v1.1.0
What's Changed
- JWT implementation by @denglerchr in #1
- Drag and drop functionality by @denglerchr in #2
- improved detail view
- base64 via content negotiation
- fix docker image and push to Dockerhub
Full Changelog: v1.0.0...v1.1.0
Release v1.0.0
This open source project provides a HTTP REST API and web frontend for storing, converting, auto-deleting and retrieving files with custom metadata, organized into distinct databases. The focus is on image and audio data, but generic files can be stored as well. The software has an optional dependency on ffmpeg for automatic audio transcoding and metadata extraction.
Intended use-cases for the software are:
- storing of camera data with metadata in a production environment, e.g., images for product quality checks
- storing of audio samples captured using microphones, e.g., for condition monitoring of machines, animal observation
🚀 Features
- Database Management: Create, list, view details, update housekeeping rules, and delete files managed in databases.
- Dynamic Metadata: Supports defining custom fields (e.g.,
score,source,defect) for each database. These fields are stored and indexed for efficient searching. - Automated Housekeeping: A background service periodically cleans up files based on configurable age (set to
0to disable) and disk space limits (set to0to disable). - Media Processing: Configure databases to automatically perform actions like converting images to JPEG or audio files to FLAC. This relies on the optional FFmpeg dependency.
- Hybrid File Uploads: Optimizes file uploads by processing small files synchronously (returning
201 Created) and large files asynchronously (returning202 Accepted). This provides immediate feedback to the user for large files, which can then be processed in the background. - Integrated Web UI: The Go application serves the Angular frontend from the embedded binary, providing a seamless user experience from a single executable.
- Preview Generation: Automatically generates downscaled JPEG previews for images and waveform images for audio files (using FFmpeg) to enable fast-loading galleries.
- Advanced Entry Search: The API supports powerful filtering on custom fields with operators like
>,<,>=,<=,!=, andLIKE(for wildcard text search). - Authentication: Basic Authentication protects all API endpoints based on user roles stored in the database.
- Config-File Initialization: On startup, can create users and databases from a TOML config file if they don't already exist.