Michael Mayer
43bca10b4e
CI: Apply Go linter recommendations to "internal/ffmpeg" package #5330
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-11-22 12:58:11 +01:00
Michael Mayer
94b6631b3d
Test: Use PascalCase names for all Go subtests in /internal
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-10-02 14:50:02 +02:00
Michael Mayer
9315e87d45
NVIDIA: Refactor ffmpeg.DefaultAvcEncoder() function
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-09-30 22:51:10 +02:00
Michael Mayer
e888b0ddb1
FFmpeg: Remove unstable "directory is unwritable" tests
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-09-27 11:46:27 +02:00
Michael Mayer
bae8ceb3a7
Auth: Support asymmetric JSON Web Tokens (JWT) and Key Sets (JWKS) #5230
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-09-25 17:52:44 +02:00
Michael Mayer
cb81f9be12
FFmpeg: Add descriptions to encoder packages in internal/ffmpeg/
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-09-25 14:20:35 +02:00
Michael Mayer
61ced7119c
Auth: Refactor cluster configuration and provisioning API endpoints #98
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-09-24 08:28:38 +02:00
Michael Mayer
91804b9652
Backend: Improve Copy()/Move() and increase pkg/internal test coverage
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-09-22 03:07:51 +02:00
Michael Mayer
c36bb566af
Videos: Refine still image extraction with ffmpeg #5189
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-09-03 11:44:09 +02:00
Michael Mayer
ff2c3b9559
Videos: Skip non-keyframes when extracting images with FFmpeg #5189
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-09-01 18:02:23 +02:00
Michael Mayer
10f15431ff
Videos: Set timestamps to zero when remuxing containers to MP4 #4982
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-06-30 09:35:26 +02:00
Michael Mayer
2e2ebab433
Videos: Improve downloading, remuxing, and transcoding #4982 #4892 #5040
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-06-09 15:31:23 +02:00
graciousgrey
1a794da1fe
Tests: Add unit tests #4969
2025-05-07 12:03:50 +02:00
Michael Mayer
8faf3fc918
Import: Add ytdl package for downloading videos from URLs #4982
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-05-02 10:04:34 +02:00
Michael Mayer
eb4fc032ff
Config: Add preset, quality, and device options for FFmpeg #4969
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-04-27 14:36:36 +02:00
Michael Mayer
f73b703123
Videos: Increase transcoding bitrate limit default to 60 Mbps #1307
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-04-24 11:59:29 +02:00
Michael Mayer
a76bbba2a6
FFmpeg: Fix Intel Quick Sync Video (QSV) hardware transcoding #4382
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-28 16:31:20 +01:00
Michael Mayer
67811d87fa
Videos: Create fragmented MP4s when transcoding with FFmpeg #4892
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-24 20:47:57 +01:00
Michael Mayer
df09c78ee1
Videos: Add "codec" search filter and auto-enable nvidia encoder #4848
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-03-10 14:30:25 +01:00
Michael Mayer
9d1c97425c
FFmpeg: Refactor internal/ffmpeg/transcode_cmd.go #4604
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-09 10:38:56 +01:00
Michael Mayer
e2195d535e
FFmpeg: Refactor extraction of JPEG and PNG images from videos #4604
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-09 10:24:53 +01:00
Michael Mayer
bbb30e6a33
FFmpeg: Add tests, refactor package, and split into sub-packages #4604
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-08 18:27:33 +01:00
Michael Mayer
fdddf37704
FFmpeg: Add "-strict -2" command flag to allow transcoding of VVC videos
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2025-01-05 17:04:45 +01:00
Michael Mayer
e2a7e50ca4
FFmpeg: Add filter "format=nv12" for Intel QSV video transcoding #4380
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2024-07-07 07:48:59 +02:00
Michael Mayer
ad92443585
Videos: Update assertions in internal/ffmpeg/convert_test.go #4181
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2024-05-30 10:12:03 +02:00
Michael Mayer
2e644809f4
Video: Fix bitrate flag value in convert_test.go #4030 #4052
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2024-02-07 18:17:41 +01:00
Michael Mayer
cb232be687
Video: Remove vpp_qsv=framerate from Intel QSV filter #4030 #4052
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2024-02-07 17:37:59 +01:00
Michael Mayer
f0e25cb1e9
Video: Add filter to Intel QSV FFmpeg transcoding flags #4030 #4052
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2024-02-07 17:25:57 +01:00
Michael Mayer
9264a7f754
Video: Enable full hardware transcoding for Intel CPUs #4030 #4052
...
TODO: The (optional) video downscaling filter has been commented out
and must be re-added before releasing these changes.
Signed-off-by: Michael Mayer <michael@photoprism.app >
2024-02-07 15:59:05 +01:00
Michael Mayer
0ca37b2c92
Docs: Update year in backend and frontend package file headers
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2024-01-05 16:38:36 +01:00
Michael Mayer
529103462c
Index: Add native support for MP4 and Samsung/Google Motion Photos #439
...
Related Issues:
- Samsung: Initial support for Motion Photos (#439 )
- Google: Initial support for Motion Photos (#1739 )
- Metadata: Flag Samsung/Google Motion Photos as Live Photos (#2788 )
Related Pull Requests:
- Live Photos: Add Support for Samsung Motion Photos (#3588 )
- Samsung: Improved support for Motion Photos (#3660 )
- Google: Initial support for Motion Photos (#3709 )
- Google: Add support for Motion Photos (#3722 )
Signed-off-by: Michael Mayer <michael@photoprism.app >
2023-09-22 23:59:56 +02:00
Michael Mayer
4154649c76
FFmpeg: Remove deprecated "-vsync vfr" command flag #3659
...
See issue comments for details. This also introduces a package constant
for the default ffmpeg command name and updates the tests.
Signed-off-by: Michael Mayer <michael@photoprism.app >
2023-09-06 11:27:24 +02:00
graciousgrey
b5b13b0fbb
Tests: Add unit tests
2023-07-20 20:06:27 +02:00
graciousgrey
4727f769d2
Tests: Add unit tests
2023-07-20 20:02:02 +02:00
Michael Mayer
3cf1c699df
Video: Refactor FFmpeg Transcoding Size Limit #3466 #3498 #3549
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2023-07-18 15:15:04 +02:00
Michael Mayer
cc5ff21b4a
Video: Add transcoding libs and improve error handling #3466
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2023-07-15 15:17:41 +02:00
Lukas
19ac83dd20
Config: Downscale videos based on largest dimension ( #3510 )
...
* Adds resolution limit
* Fixes 2 video filters and makes the env variable work
* Adds FFMPEG_RESOLUTION to all the docker-compose files
* Makes the resolution based on the longer side
* Fixes failing test
2023-06-29 10:07:47 +02:00
Lukas
83d10ea00e
Config: Add video transcoding resolution option ( #3498 )
...
* Adds resolution limit
* Fixes 2 video filters and makes the env variable work
* Adds FFMPEG_RESOLUTION to all the docker-compose files
2023-06-28 15:22:52 +02:00
Michael Mayer
157c6c723a
FFmpeg: Allow selection of specific video and audio streams #3284
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2023-03-14 18:00:55 +01:00
ghostwheel
9762150da6
Changed audio conversion to only use one stream
...
0:a means take all audio streams of first file. 0🅰️ 0 means first stream of first file. 0🅰️ 0? means first audio stream of first file if available.
2023-03-14 15:32:37 +01:00
ghostwheel
7e843808ca
Added map for audio stream, too
...
It seems that if -map is used for video (-map 0✌️ 0) then a map is also needed for audio, otherwise no audio is produced.
2023-03-14 07:15:59 +01:00
Micah
240393d8b6
Update convert.go
...
When I upgraded my phone to the Google Pixel 7, I noticed that the videos it takes have an extra video stream in them for their compressed HVC1 implementation. This means that all software transcoding of that format would fail, as it was transcoding the wrong video stream. This alteration fixed the issue for me, and will likely avoid video files with multiple video streams causing issues in the future.
2023-03-02 14:14:31 +01:00
Michael Mayer
eaff0abb6d
Videos: Index and display durations of less than one second #3224
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2023-02-22 16:33:33 +01:00
Michael Mayer
527fc0319e
Index: Add experimental support for JPEG XL and APNG files #668 #3197
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2023-02-14 14:43:49 +01:00
Michael Mayer
97c9962053
Index: Add experimental EPS and SVG vector graphics support #1177 #2207
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2023-02-11 20:18:04 +01:00
Michael Mayer
a5a538a67e
Links: Change https://photoprism.app/ to https://www.photoprism.app/
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2023-02-08 09:07:42 +01:00
Michael Mayer
4066cd7ad1
Update year in copyright notices
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2023-01-11 16:43:01 +01:00
Michael Mayer
06744f356c
Video: Change FFmpeg params for NVidia hardware transcoding #2613
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2022-11-03 16:18:04 +01:00
blue-kaleidoscope
c2e1989dad
Added VAAPI encoder support
2022-09-28 10:03:53 +02:00
Michael Mayer
b072a18a17
Backend: Run "make fmt" with Go v1.19
...
Signed-off-by: Michael Mayer <michael@photoprism.app >
2022-08-10 16:09:21 +02:00