Skip to content

[camera_platform_interface] Add setJpegImageQuality method#11454

Merged
auto-submit[bot] merged 5 commits into
flutter:mainfrom
Bolling88:platform-interface-jpeg-quality
Apr 14, 2026
Merged

[camera_platform_interface] Add setJpegImageQuality method#11454
auto-submit[bot] merged 5 commits into
flutter:mainfrom
Bolling88:platform-interface-jpeg-quality

Conversation

@Bolling88

Copy link
Copy Markdown
Contributor

Platform interface changes for adding JPEG compression quality control to the camera plugin. This is the platform interface subset of #11155, split out per the federated plugin contribution process.

Fixes flutter/flutter#183229

Pre-Review Checklist

Footnotes

  1. Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling. 2

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces the setJpegImageQuality method to the camera_platform_interface package, enabling control over JPEG compression quality. The update includes the interface definition, method channel implementation, and unit tests. Feedback suggests adding an assertion to validate the quality range and wrapping the method channel call in a try-catch block to throw a CameraException for consistent error handling.

@Bolling88

Copy link
Copy Markdown
Contributor Author

@bparrishMines @hellohuanlin @LouiseHsu Could you review this? It's the platform interface subset of #11155, split out per the federated plugin process.

@LouiseHsu

Copy link
Copy Markdown
Contributor

@Bolling88 I will take a look! 😸 But for future reference may I gently suggest requesting viewers through the side panel? It adds the PR to the review list, while manually tagging reviewers only generates an email that can easily get lost. :)

@LouiseHsu LouiseHsu added the CICD Run CI/CD label Apr 7, 2026
@github-actions github-actions Bot removed the CICD Run CI/CD label Apr 8, 2026
@Bolling88

Copy link
Copy Markdown
Contributor Author

@Bolling88 I will take a look! 😸 But for future reference may I gently suggest requesting viewers through the side panel? It adds the PR to the review list, while manually tagging reviewers only generates an email that can easily get lost. :)

Thank you! But I think I lack the necessary permissions to add reviewers. At least that option does not exist for me when I try :(

Anyhow, we also need @bparrishMines approval before proceeding?

@LouiseHsu

Copy link
Copy Markdown
Contributor

@Bolling88 I will take a look! 😸 But for future reference may I gently suggest requesting viewers through the side panel? It adds the PR to the review list, while manually tagging reviewers only generates an email that can easily get lost. :)

Thank you! But I think I lack the necessary permissions to add reviewers. At least that option does not exist for me when I try :(

Anyhow, we also need @bparrishMines approval before proceeding?

yes, we should def wait for him! But i think this requires at least 2 reviewers to merge.

@bparrishMines bparrishMines left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@bparrishMines bparrishMines added the CICD Run CI/CD label Apr 9, 2026
@github-actions github-actions Bot removed the CICD Run CI/CD label Apr 10, 2026
@Bolling88

Copy link
Copy Markdown
Contributor Author

All approvals are in — could someone land this? :)

@bparrishMines bparrishMines added CICD Run CI/CD autosubmit Merge PR when tree becomes green via auto submit App labels Apr 14, 2026
@auto-submit
auto-submit Bot merged commit 749abe9 into flutter:main Apr 14, 2026
82 checks passed
pull Bot pushed a commit to Klomgor/flutter that referenced this pull request Apr 20, 2026
…er#185287)

flutter/packages@c2e3d1f...01c505f

2026-04-20 [email protected] Roll Flutter from
8e8a194 to 2844af6 (13 revisions) (flutter/packages#11531)
2026-04-17 [email protected] [google_maps_fluter] Switch to Kotlin
Pigeon (flutter/packages#11522)
2026-04-17 [email protected] Roll Flutter (stable) from
db50e20 to cc0734a (8 revisions) (flutter/packages#11525)
2026-04-17 [email protected] Roll Flutter from
31f1802 to 8e8a194 (22 revisions) (flutter/packages#11523)
2026-04-17 [email protected] [google_maps_flutter] Fix various
Java warnings (flutter/packages#11516)
2026-04-16 [email protected] [google_maps_flutter] Use super
parameters in more places in examples (flutter/packages#11517)
2026-04-16 [email protected] Roll Flutter from
c1b14e9 to 31f1802 (46 revisions) (flutter/packages#11518)
2026-04-15 [email protected] [tool] Update java formatter
(flutter/packages#11508)
2026-04-15 [email protected] [quick_actions] Remove manual thread
hop in Android response (flutter/packages#11445)
2026-04-15 49699333+dependabot[bot]@users.noreply.github.com Bump
lewagon/wait-on-check-action from 1.6.0 to 1.7.0 in the
all-github-actions group (flutter/packages#11510)
2026-04-14 [email protected] Skip dependabot updates for minor versions
of gradle and kotlin (flutter/packages#11509)
2026-04-14 [email protected] [go_router] Fix pop() restoring
stale configuration when route has onExit (flutter/packages#11241)
2026-04-14 [email protected] [url_launcher] Switch to Kotlin
Pigeon (flutter/packages#11473)
2026-04-14 [email protected] [pr-fix] Run all flutter/packages
macOS tests using Xcode 26 and iOS 26 simulator (flutter/packages#10635)
2026-04-14 [email protected] [camera_platform_interface] Add
setJpegImageQuality method (flutter/packages#11454)
2026-04-14 [email protected] Roll Flutter from
2fa45e0 to c1b14e9 (19 revisions) (flutter/packages#11506)
2026-04-14 [email protected] [local_auth] Switch to Kotlin Pigeon
(flutter/packages#11482)
2026-04-13 [email protected] Sync release-go_router to main
(flutter/packages#11499)
2026-04-13 [email protected] [mustache_template] Fix auto-generated
specification tests, run with `dart test` (flutter/packages#11056)
2026-04-13 [email protected] Roll Flutter from
bf18e39 to 2fa45e0 (19 revisions) (flutter/packages#11497)
2026-04-10 [email protected] Roll Flutter from
81c87ea to bf18e39 (18 revisions) (flutter/packages#11488)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC [email protected] on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Bolling88 added a commit to Bolling88/packages that referenced this pull request May 20, 2026
Adds setJpegImageQuality(int quality) across all camera platform
implementations (Android, Android CameraX, iOS AVFoundation) and
the app-facing camera package. This allows controlling the JPEG
compression quality (1-100) for still image capture.

Platform interface changes were landed separately in flutter#11454.
Bolling88 added a commit to Bolling88/packages that referenced this pull request May 25, 2026
Adds setJpegImageQuality(int quality) across all camera platform
implementations (Android, Android CameraX, iOS AVFoundation) and
the app-facing camera package. This allows controlling the JPEG
compression quality (1-100) for still image capture.

Platform interface changes were landed separately in flutter#11454.
Bolling88 added a commit to Bolling88/packages that referenced this pull request May 28, 2026
Adds setJpegImageQuality(int quality) across all camera platform
implementations (Android, Android CameraX, iOS AVFoundation) and
the app-facing camera package. This allows controlling the JPEG
compression quality (1-100) for still image capture.

Platform interface changes were landed separately in flutter#11454.
creatorpiyush pushed a commit to creatorpiyush/packages that referenced this pull request Jun 10, 2026
…1454)

Platform interface changes for adding JPEG compression quality control to the camera plugin. This is the platform interface subset of flutter#11155, split out per the federated plugin contribution process.

Fixes flutter/flutter#183229

## Pre-Review Checklist

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
Istiak-Ahmed78 pushed a commit to Istiak-Ahmed78/packages that referenced this pull request Jun 19, 2026
…1454)

Platform interface changes for adding JPEG compression quality control to the camera plugin. This is the platform interface subset of flutter#11155, split out per the federated plugin contribution process.

Fixes flutter/flutter#183229

## Pre-Review Checklist

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
auto-submit Bot pushed a commit that referenced this pull request Jul 6, 2026
…JpegImageQuality (#11616)

Implements the `setJpegImageQuality` API (landed in the platform interface via #11454) across all camera platform implementation packages, allowing control of JPEG compression quality (1-100) for still image capture.

This is the follow-up implementation PR as requested in #11155; it does not include `camera_platform_interface` changes. The app-facing `camera` package will be submitted in a separate PR after these implementation packages are published.

Packages changed:
- `camera_android`
- `camera_android_camerax`
- `camera_avfoundation`

Part of flutter/flutter#183229

## Pre-Review Checklist

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
kalyujniy pushed a commit to brickit-app/camera that referenced this pull request Jul 8, 2026
…JpegImageQuality (flutter#11616)

Implements the `setJpegImageQuality` API (landed in the platform interface via flutter#11454) across all camera platform implementation packages, allowing control of JPEG compression quality (1-100) for still image capture.

This is the follow-up implementation PR as requested in flutter#11155; it does not include `camera_platform_interface` changes. The app-facing `camera` package will be submitted in a separate PR after these implementation packages are published.

Packages changed:
- `camera_android`
- `camera_android_camerax`
- `camera_avfoundation`

Part of flutter/flutter#183229

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

autosubmit Merge PR when tree becomes green via auto submit App CICD Run CI/CD p: camera

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Proposal:[camera] Add API to control JPEG compression quality

4 participants