Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

[camera_android_camerax] Implement enableAudio for video recording #9264

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 14 commits into from
May 23, 2025

Conversation

camsim99
Copy link
Contributor

@camsim99 camsim99 commented May 16, 2025

Note

This should land after #9241, which should safely bumps the AGP version of this plugin's example app higher than this PR does.

Fixes flutter/flutter#168551 by implementing the enableAudio camera setting for video recording. Also:

  • Bumps CameraX library version to the latest version,1.5.0-beta01 (to use a new CameraX method in this implementation)
  • Bumps the plugin AGP version to that which 1.5.0-beta01 requires (8.6.0)
  • Bumps the plugin's example app AGP version to that which 1.5.0-beta01 requires (8.6.0) -- will be overridden by [Android 16] Bumped Android Defaults in Example Plugins #9241
  • Corrects the example app to use the enableAudio setting just as the app-facing camera widget does
  • Adds lint errors caused by the pigeon generated CameraXLibrary.g.kt file caused by the 1.5.0-beta01 bump to a lint-baseline.xml file (all the errors are UnsageOptInUsage lints caused by the plugin's ExperimentalCamera2Interop usage which is unrelated to this PR)

Pre-Review Checklist

If you need help, consider asking for advice on the #hackers-new channel on Discord.

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 3

@@ -57,16 +57,17 @@ android {
}
}

lintOptions {
lint {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

lintOptions is deprecated!

@@ -25,6 +27,19 @@ public ProxyApiRegistrar getPigeonRegistrar() {
return (ProxyApiRegistrar) super.getPigeonRegistrar();
}

@NonNull
@Override
public PendingRecording withAudioEnabled(PendingRecording pigeonInstance, boolean initialMuted) {
Copy link
Contributor

Choose a reason for hiding this comment

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

Just to clarify, withAudioEnabled(true) disables audio and withAudioEnabled(false) enables audio? I'm confused by the parameter name being initialMuted.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Lol yeah it's confusing.

I made this mirror PendingRecording.withAudioEnabled where initialMuted == true means that you want to initialize the recording as being muted/audio disabled, so withAudioEnabled(true) disables audio, withAudioEnabled(false) enables audio.

Copy link
Contributor

@bparrishMines bparrishMines left a comment

Choose a reason for hiding this comment

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

LGTM

@camsim99 camsim99 added the autosubmit Merge PR when tree becomes green via auto submit App label May 23, 2025
Copy link
Contributor

auto-submit bot commented May 23, 2025

autosubmit label was removed for flutter/packages/9264, because Pull request flutter/packages/9264 is not in a mergeable state.

@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label May 23, 2025
@camsim99 camsim99 added the autosubmit Merge PR when tree becomes green via auto submit App label May 23, 2025
@auto-submit auto-submit bot merged commit 62f38a1 into flutter:main May 23, 2025
81 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request May 27, 2025
github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request May 27, 2025
flutter/packages@af0b9a9...6eebe72

2025-05-27 github@benprice.ca [flutter_lints] Bump lints dependency to
6.0.0 and bump package to 6.0.0 (flutter/packages#9108)
2025-05-26 engine-flutter-autoroll@skia.org Roll Flutter from
60050a0 to 4372bfb (6 revisions) (flutter/packages#9322)
2025-05-26 robert.odrowaz@leancode.pl [video_player_android] Add note
about Android platform views known issue (flutter/packages#9312)
2025-05-24 engine-flutter-autoroll@skia.org Roll Flutter from
85564cb to 60050a0 (17 revisions) (flutter/packages#9318)
2025-05-23 43054281+camsim99@users.noreply.github.com
[camera_android_camerax] Implement `enableAudio` for video recording
(flutter/packages#9264)
2025-05-23 65381000+raju-muliyashiya@users.noreply.github.com
[video_player_android] isBuffering flag always return true after calling
seekTo method - fixed (flutter/packages#9198)
2025-05-23 stuartmorgan@google.com [camera,video_player] replace
onSurfaceDestroyed with onSurfaceCleanup (flutter/packages#9316)
2025-05-23 stuartmorgan@google.com [camera,video_player] Update Android
to 3.29 minimum (flutter/packages#9317)
2025-05-23 engine-flutter-autoroll@skia.org Roll Flutter from
33cdd8e to 85564cb (39 revisions) (flutter/packages#9315)
2025-05-23 stuartmorgan@google.com Update repo for 3.32 stable
(flutter/packages#9311)
2025-05-23 robert.odrowaz@leancode.pl [camera_avfoundation] Correct
pigeon configuration output paths (flutter/packages#9313)
2025-05-23 stuartmorgan@google.com [process] Remove from the repository
(flutter/packages#9310)
2025-05-22 jessiewong401@gmail.com Ensure Example Packages Work on
Android API 36 (flutter/packages#9241)
2025-05-22 engine-flutter-autoroll@skia.org Roll Flutter (stable) from
c236373 to be698c4 (1274 revisions) (flutter/packages#9300)
2025-05-22 magder@google.com Remove CODEOWNER for generated iOS files
(flutter/packages#9272)
2025-05-22 52160996+FMorschel@users.noreply.github.com
[google_maps_flutter] Removes unnecessary parentheses
(flutter/packages#9273)
2025-05-21 magder@google.com Rebalance Android plugin CODEOWNERS
(flutter/packages#9298)
2025-05-21 engine-flutter-autoroll@skia.org Roll Flutter from
9a78af5 to 33cdd8e (60 revisions) (flutter/packages#9305)
2025-05-21 stuartmorgan@google.com [ci] Update repository for 3.29
release (flutter/packages#9270)
2025-05-21 stuartmorgan@google.com Ignore .cxx/ directories
(flutter/packages#9268)
2025-05-21 stuartmorgan@google.com [video_player] Skip some integration
tests on web (flutter/packages#9302)
2025-05-21 10687576+bparrishMines@users.noreply.github.com
[webview_flutter] Adds support to respond to recoverable SSL certificate
errors (flutter/packages#9150)
2025-05-19 43054281+camsim99@users.noreply.github.com
[camera_android_camerax] Swap out `BroadcastReceiver` for
`OrientationEventListener` (flutter/packages#9261)
2025-05-19 54174311+marvin-kolja@users.noreply.github.com
[video_player_android] Fix incorrect dimensions swap
(flutter/packages#9199)

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 flutter-ecosystem@google.com 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
auto-submit bot pushed a commit that referenced this pull request Jun 5, 2025
… objects when app is under memory pressure (#9287)

~~*Note:* Waiting on #9264 to land and to regenerate baseline file with.~~

This bumps `pigeon` to `25.3.2` and regenerates the code to fix a bug where native objects were getting garbage collected prematurely. See flutter/flutter#168531

Fixes flutter/flutter#152763

## Pre-Review Checklist

- [s] All existing and new tests are passing.

[^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.
FMorschel pushed a commit to FMorschel/packages that referenced this pull request Jun 9, 2025
…lutter#9264)

> [!NOTE]  
> This should land after flutter#9241, which should safely bumps the AGP version of this plugin's example app higher than this PR does.

Fixes flutter/flutter#168551 by implementing the `enableAudio` camera setting for video recording. Also:
- Bumps CameraX library version to the latest version,`1.5.0-beta01` (to use a new CameraX method in this implementation)
- Bumps the plugin AGP version to that which `1.5.0-beta01` requires (`8.6.0`)
- Bumps the plugin's example app AGP version to that which `1.5.0-beta01` requires (`8.6.0`) -- will be overridden by flutter#9241
- Corrects the example app to use the `enableAudio` setting just as the app-facing camera widget does
- Adds lint errors caused by the **pigeon generated** `CameraXLibrary.g.kt` file caused by the `1.5.0-beta01` bump to a `lint-baseline.xml` file (all the errors are [`UnsageOptInUsage`](https://googlesamples.github.io/android-custom-lint-rules/checks/UnsafeOptInUsageError.md.html) lints caused by the plugin's [`ExperimentalCamera2Interop`](https://developer.android.com/reference/androidx/camera/camera2/interop/ExperimentalCamera2Interop) usage which is unrelated to this PR)

## 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.
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 p: camera platform-android
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[camerax] enableAudio has no effect on video recording, can not mute video recording if microphone permission granted
2 participants
Morty Proxy This is a proxified and sanitized view of the page, visit original site.