Andrey Skvortsov
6a7d2ec85e
video: reset button icon to inactive after video processing
...
In current state after video is processed and saved button has
video-recording icon, that is confusing.
The change handles exit code of movie.sh script and depending on that
notifies UI to set video-inactive icon. video-recording icon is set,
when the user press button to activate video recording.
2025-04-08 22:51:27 +00:00
Andrey Skvortsov
4cbd8c2df7
process_pipeline.c: remove unused static variable
2025-04-08 22:51:27 +00:00
Andrey Skvortsov
53854bdf73
mpegize: add support for dcraw_emu
2025-04-08 22:51:27 +00:00
Andrey Skvortsov
15a999cb87
mpegize: fix double % in output
...
since there is no format output here double percents are not needed.
2025-04-08 22:51:27 +00:00
Andrey Skvortsov
6cfc9bfc05
video: fix missing directory on video capture
...
if photo was taken before, then temporary directory in tmpfs was clean
and removed after all files were processed. Internal burst_dir
variable contains old value for directory, that doesn't exist anymore.
Let's create new temporary directory, when video recording is started.
2025-04-08 22:51:27 +00:00
Andrey Skvortsov
8282b4eaca
mpegize: force to remove non-empty subdirectories
...
os.rmdir doesn't remove non-empty directories. m.base/sm subdirectory
contains audio-samples, that were not removed after video is created.
2025-04-08 22:51:27 +00:00
Andrey Skvortsov
978680e5c6
mpegize: remove processed raw files
...
raw files are save in tmpfs and consume RAM, to avoid extra
RAM-pressure remove these files after they are processed and not
needed anymore.
2025-04-08 22:51:27 +00:00
Andrey Skvortsov
883c16733d
video: fix segmentation fault on video capture
...
If there was no picture capture or camera switch after application start, then
state_proc.configuration is uninitialized. If video capture is started
in this case, then segmentation fault happens.
Thread 8 "megapixels-pr" received signal SIGSEGV, Segmentation fault.
1085 if (state_proc.configuration->make != NULL &&
(gdb) p state_proc.configuration
$1 = (libmegapixels_devconfig *) 0x0
state.configuration is set in update_state(), but set only after
init_controls(). After update_process_pipeline() is
called from init_controls() pipeline_change flag is reset and changes
after init_controls() (including state.configuration) are not applied to
state_proc. Removing update_process_pipeline from init_controls()
makes all settings to be applied at the end of update_state().
init_controls() is called only from update_state().
2025-04-08 22:38:06 +00:00
Andrey Skvortsov
35b84f0a12
postprocess: fix black images with dcraw
...
for some reason on Debian dcraw creates black images, when -w (Use
camera white balance) isn't used.
See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1101360
2025-04-05 23:31:51 +03:00
Andrey Skvortsov
de765137d5
postprocess: remove unneeded FBDD enforcement for convert
...
If convert is used with dcraw (instead of dcraw_emu), then dcraw
reports error:
1: No such file or directory
Convert doesn't use '$@' (-fbdd 1), so there is no reason to enforce
it here. postprocess.sh already detects dcraw
version (dcraw/dcraw_emu) and sets FBDD option. FBDD is supported only
by dcraw_emu.
Fixes: 8867b41a
(Support graphicsmagick as alternative to imagemagick)
2025-04-05 23:31:51 +03:00
Martijn Braam
0b407957ed
Fix loading the search paths for DCP files and add XDG_CONFIG_HOME as extra path
2025-04-04 02:24:48 +02:00
Egor Shestakov
970f320894
fix pointer type mistake in find_calibration loop
2025-03-20 16:10:41 +07:00
Egor Shestakov
e02b54ec57
add buffer size check in find_calibration
...
Drop find_calibration_by_model function that was occassionally,
as I suppose, marked not static.
2025-03-12 12:16:04 +00:00
Egor Shestakov
9b1ee0161d
generalize find_calibration_by_model with a loop
2025-03-12 12:08:42 +00:00
Egor Shestakov
ae48e07f84
use libmegapixels_get_model in find_calibration
2025-03-12 12:08:09 +00:00
Andrey Skvortsov
dc60446c15
data: metainfo: add 2.0.0-alpha1 pre-release description
2025-03-09 00:10:50 +03:00
Andrey Skvortsov
5239797886
data: metainfo: update homepage url
2025-03-09 00:10:50 +03:00
Andrey Skvortsov
f756a1fd88
Add flatpak packaging
...
command to build:
flatpak-builder --force-clean --user --install-deps-from=flathub --repo=repo --install builddir flatpak/me.gapixels.Megapixels.yml
2025-03-09 00:10:50 +03:00
Egor Shestakov
29adecb84f
use snprintf instead of sprintf in format_movie_name to prevent OOB
2025-03-07 18:47:06 +07:00
Arnaud Ferraris
9acea2849d
config: make DCP files non-executable
2025-02-17 12:45:23 +01:00
Arnaud Ferraris
059ac4edc5
data: metainfo: fix validation errors
2025-02-17 12:45:23 +01:00
Arnaud Ferraris
ffaad5fa50
data: desktop: add keywords
2025-02-17 12:45:23 +01:00
Egor Shestakov
2f2929800b
initialize struct v4l2_plane in mp_camera_*_buffer functions
...
without it ioctl parameter points to uninitialized value
2025-02-11 21:18:43 +07:00
Egor Shestakov
ae1faec57d
fix memory leak in process_aaa
2025-01-16 18:58:48 +07:00
Pavel Machek
1378973cd1
Fix meson.build to work with older meson
...
Robot suggested this, and it seems to do the trick.
2024-12-27 12:13:49 +01:00
Martijn Braam
541dd2f9c3
Add the other three YUV formats to the shader
2024-12-24 22:39:05 +01:00
Ferass El Hafidi
f5248b388e
process_pipeline.c: fix call to libdng_write
2024-12-24 16:29:58 +00:00
Martijn Braam
d1f9b88839
Bump version to 2.0.0-alpha1
2024-12-24 13:23:30 +01:00
Martijn Braam
4791d38061
Fix data dependency in cmake
2024-12-23 17:38:23 +01:00
Martijn Braam
79eab3fe1a
Fix .jpg vs .jpeg file extension for YUV captures
2024-12-23 17:34:18 +01:00
Martijn Braam
8fbea82b2b
Rewrite YUV processing pipeline.
...
Use a 4-channel texture instead for packed YUV data so
every pixel in the texture has all the 4:2:2 color data
available.
2024-12-23 17:29:46 +01:00
Martijn Braam
1b5a871641
Don't make the missing movie.sh file fatal
2024-12-23 15:40:34 +01:00
Takuya Wakazono
a9f6291c3e
Explicitly declare function parameters for GCC 15 compatibility
...
In GCC 15, where C23 is the default, void foo() is equivalent to void
foo(void). Therefore, functions must explicitly declare their
parameters.
2024-11-30 22:38:05 +09:00
Kristian Vos
95ae684d9f
Pass color/forward matrices to libdng
2024-11-04 18:44:28 +01:00
Kristian Vos
22fc1309c5
Fix wrong rotation being used for DNG
2024-11-04 15:04:30 +01:00
Kristian Vos
98ae16848c
Fix preview not working after switching windows
2024-09-30 14:38:08 +02:00
Martijn Braam
2a328e4f2d
Add helper script for setting up a full megapixels system on a phone
2024-09-11 17:13:57 +02:00
Pavel Machek
bd1a19f66f
ae: fix problem uncovered by alpine build
2024-09-07 23:04:32 +02:00
Pavel Machek
95f474076c
ae: don't go over 1/100 sec exposure too easily
2024-09-07 22:52:31 +02:00
Pavel Machek
bfe76b7568
ui: disable for now, gtk does not like cross-calls
2024-09-07 22:52:30 +02:00
Pavel Machek
474b2db2c9
ui: display focus information, too.
2024-09-07 22:52:30 +02:00
Pavel Machek
cccfdb18c7
ui: take digital gain into consideration, too
2024-09-07 22:52:30 +02:00
Pavel Machek
13264d6b1c
ui: display exposure/gain settings
2024-09-07 22:52:30 +02:00
Pavel Machek
9e4b760b77
ui: Add button with camera status.
2024-09-07 22:52:30 +02:00
Pavel Machek
47772bde2e
ae: use gain/dgain minimum values
2024-09-07 22:52:30 +02:00
Pavel Machek
b5dbc416b5
ae: start using minimum values for controls, too
2024-09-07 22:52:30 +02:00
Pavel Machek
16092880d0
auto: display values in known units
2024-09-07 22:52:30 +02:00
Pavel Machek
eeca8fe4cc
auto: cleanups
2024-09-07 22:52:30 +02:00
Pavel Machek
5fd1e09059
auto: tweak debugging
2024-09-07 22:52:30 +02:00
Pavel Machek
def6e19b5e
ae: debugging note when out of options. 7.67 sec to "full dark".
2024-09-07 22:52:30 +02:00