Skip to content

[Camera] Start the video stream using the parameters from the allocated stream #40658

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

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

yufengwangca
Copy link
Contributor

@yufengwangca yufengwangca commented Aug 20, 2025

Summary

Currently, there are two different stream representations:

CameraDevice HAL: Contains "available streams" (VideoStream structs) that represent the hardware capabilities and current allocation status
CameraAVStreamMgmtServer: Contains "allocated streams" (mAllocatedVideoStreams) that represent the Matter cluster view of allocated streams

How Stream Allocation Works
Here's how the flow works when a user requests to allocate a stream:

  1. Stream Allocation Request Flow:
    CameraAVStreamMgmtServer::HandleVideoStreamAllocate() receives the request
    It calls mDelegate.VideoStreamAllocate() (which is CameraAVStreamManager::VideoStreamAllocate())
    CameraAVStreamManager::VideoStreamAllocate() searches through mCameraDeviceHAL->GetCameraHALInterface().GetAvailableVideoStreams()
    If a compatible stream is found, it marks stream.isAllocated = true in the HAL
    It calls mCameraDeviceHAL->GetCameraHALInterface().StartVideoStream(outStreamID) to start the actual stream
    The server then either calls AddVideoStream() or UpdateVideoStreamRangeParams() to update its mAllocatedVideoStreams

  2. The Issue You Identified:
    You're absolutely right that UpdateVideoStreamRangeParams() only updates the mAllocatedVideoStreams in the server, not the HAL streams. However, looking at the code, this is actually by design.

HAL "Available Streams" = Reference templates with wide parameter ranges
Server "Allocated Streams" = Narrowed parameter ranges representing actual allocated streams

When starting a video stream, you should use the allocated stream parameters from the server, not the original HAL parameters

Related issues

N/A

Testing

To start a live video stream from your camera, use the liveview start command
followed by the nodeID you set during pairing. For example, if your nodeID is
1, you can request a stream with a minimum resolution of 800x600 pixels and a
minimum frame rate of 30 frames per second using the command below.

liveview start 1 --min-res-width 800 --min-res-height 600 --min-framerate 30

To see what video formats and resolutions your camera supports, use the
following command:

v4l2-ctl -d /dev/video0 --list-formats-ext

@Copilot Copilot AI review requested due to automatic review settings August 20, 2025 04:30
@yufengwangca yufengwangca marked this pull request as draft August 20, 2025 04:30
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR refactors the video stream allocation process to ensure the video stream starts using the final allocated parameters rather than the originally requested parameters. The key improvement is adding a new callback mechanism that provides the server-finalized stream parameters to the implementation layer.

  • Adds a new OnVideoStreamAllocated callback to provide finalized stream parameters after server allocation
  • Moves video stream startup logic from allocation to the new callback to use final parameters
  • Updates video pipeline creation to use allocated stream parameters instead of stored stream parameters

Reviewed Changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
camera-av-stream-management-server.h Adds new OnVideoStreamAllocated virtual method to delegate interface
camera-av-stream-management-server.cpp Calls the new callback with finalized stream parameters after allocation
camera-av-stream-manager.cpp Implements the callback and moves stream startup logic from allocation method
camera-av-stream-manager.h Declares the new callback method override
camera-device.cpp Updates StartVideoStream to accept and use allocated stream parameters
camera-device.h Updates method signature to accept VideoStreamStruct instead of stream ID
camera-device-interface.h Updates interface method signature to match implementation

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Copy link
Contributor

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

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 refactors the video stream startup process to use the final allocated stream parameters, which is a good improvement for correctness and flexibility. The changes are well-contained and follow a clear logic of moving the stream start call to a new delegate method OnVideoStreamAllocated, which is triggered after the server finalizes the stream parameters. I've found one minor issue with a log message that reports incorrect stream parameters, which could be misleading. Otherwise, the changes look solid.

@yufengwangca yufengwangca force-pushed the pr/camera/stream branch 2 times, most recently from b117f5d to dede2ba Compare August 20, 2025 04:38
Copy link

github-actions bot commented Aug 20, 2025

PR #40658: Size comparison from 6e50acf to dede2ba

Full report (35 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, efr32, nrfconnect, nxp, psoc6, qpg, realtek, stm32, telink)
platform target config section 6e50acf dede2ba change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1105864 1105864 0 0.0
RAM 179018 179018 0 0.0
bl702 lighting-app bl702+eth FLASH 658740 658740 0 0.0
RAM 134929 134929 0 0.0
bl702+wifi FLASH 836370 836370 0 0.0
RAM 124509 124509 0 0.0
bl706+mfd+rpc+littlefs FLASH 1068378 1068378 0 0.0
RAM 117349 117349 0 0.0
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 897816 897816 0 0.0
RAM 105660 105660 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 981530 981530 0 0.0
RAM 109844 109844 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 767932 767932 0 0.0
RAM 103368 103368 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 779536 779536 0 0.0
RAM 108536 108536 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 725516 725516 0 0.0
RAM 96932 96932 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 709992 709992 0 0.0
RAM 97140 97140 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 552230 552230 0 0.0
RAM 205120 205120 0 0.0
lock CC3235SF_LAUNCHXL FLASH 584162 584162 0 0.0
RAM 205328 205328 0 0.0
efr32 lock-app BRD4187C FLASH 959328 959328 0 0.0
RAM 122644 122644 0 0.0
BRD4338a FLASH 755184 755184 0 0.0
RAM 251908 251908 0 0.0
window-app BRD4187C FLASH 1053036 1053036 0 0.0
RAM 118872 118872 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 911424 911424 0 0.0
RAM 152872 152872 0 0.0
nxp contact mcxw71+release FLASH 632424 632424 0 0.0
RAM 64124 64124 0 0.0
lock mcxw71+release FLASH 742208 742208 0 0.0
RAM 65200 65200 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1661092 1661092 0 0.0
RAM 211192 211192 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1582412 1582412 0 0.0
RAM 208456 208456 0 0.0
light cy8ckit_062s2_43012 FLASH 1453356 1453356 0 0.0
RAM 197184 197184 0 0.0
lock cy8ckit_062s2_43012 FLASH 1485684 1485684 0 0.0
RAM 224896 224896 0 0.0
qpg lighting-app qpg6200+debug FLASH 820952 820952 0 0.0
RAM 127644 127644 0 0.0
lock-app qpg6200+debug FLASH 758284 758284 0 0.0
RAM 118604 118604 0 0.0
realtek light-switch-app rtl8777g FLASH 703704 703704 0 0.0
RAM 106652 106652 0 0.0
lighting-app rtl8777g FLASH 755240 755240 0 0.0
RAM 127032 127032 0 0.0
stm32 light STM32WB5MM-DK FLASH 467628 467628 0 0.0
RAM 141376 141376 0 0.0
telink bridge-app tl7218x FLASH 709606 709606 0 0.0
RAM 93452 93452 0 0.0
light-app-ota-compress-lzma-shell-factory-data tl3218x FLASH 798518 798518 0 0.0
RAM 44012 44012 0 0.0
light-app-ota-shell-factory-data tl7218x FLASH 789732 789732 0 0.0
RAM 100756 100756 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 715888 715888 0 0.0
RAM 54236 54236 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 749244 749244 0 0.0
RAM 77384 77384 0 0.0
light-switch-app-ota-factory-data tl3218x_retention FLASH 726034 726034 0 0.0
RAM 36984 36984 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 606024 606024 0 0.0
RAM 112564 112564 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 822452 822456 4 0.0
RAM 99152 99152 0 0.0

@yufengwangca yufengwangca marked this pull request as ready for review August 20, 2025 17:23
Copy link

github-actions bot commented Aug 20, 2025

PR #40658: Size comparison from 6e50acf to 37e23d0

Full report (33 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, efr32, nrfconnect, psoc6, qpg, realtek, stm32, telink)
platform target config section 6e50acf 37e23d0 change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1105864 1105864 0 0.0
RAM 179018 179018 0 0.0
bl702 lighting-app bl702+eth FLASH 658740 658740 0 0.0
RAM 134929 134929 0 0.0
bl702+wifi FLASH 836370 836370 0 0.0
RAM 124509 124509 0 0.0
bl706+mfd+rpc+littlefs FLASH 1068378 1068378 0 0.0
RAM 117349 117349 0 0.0
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 897816 897816 0 0.0
RAM 105660 105660 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 981530 981530 0 0.0
RAM 109844 109844 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 767932 767932 0 0.0
RAM 103368 103368 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 779536 779536 0 0.0
RAM 108536 108536 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 725516 725516 0 0.0
RAM 96932 96932 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 709992 709992 0 0.0
RAM 97140 97140 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 552230 552230 0 0.0
RAM 205120 205120 0 0.0
lock CC3235SF_LAUNCHXL FLASH 584162 584162 0 0.0
RAM 205328 205328 0 0.0
efr32 lock-app BRD4187C FLASH 959328 959392 64 0.0
RAM 122644 122696 52 0.0
BRD4338a FLASH 755184 754736 -448 -0.1
RAM 251908 251996 88 0.0
window-app BRD4187C FLASH 1053036 1053196 160 0.0
RAM 118872 118892 20 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 911424 911424 0 0.0
RAM 152872 152872 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1661092 1661092 0 0.0
RAM 211192 211192 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1582412 1582412 0 0.0
RAM 208456 208456 0 0.0
light cy8ckit_062s2_43012 FLASH 1453356 1453356 0 0.0
RAM 197184 197184 0 0.0
lock cy8ckit_062s2_43012 FLASH 1485684 1485684 0 0.0
RAM 224896 224896 0 0.0
qpg lighting-app qpg6200+debug FLASH 820952 820952 0 0.0
RAM 127644 127644 0 0.0
lock-app qpg6200+debug FLASH 758284 758284 0 0.0
RAM 118604 118604 0 0.0
realtek light-switch-app rtl8777g FLASH 703704 703704 0 0.0
RAM 106652 106652 0 0.0
lighting-app rtl8777g FLASH 755240 755240 0 0.0
RAM 127032 127032 0 0.0
stm32 light STM32WB5MM-DK FLASH 467628 467628 0 0.0
RAM 141376 141376 0 0.0
telink bridge-app tl7218x FLASH 709606 709606 0 0.0
RAM 93452 93452 0 0.0
light-app-ota-compress-lzma-shell-factory-data tl3218x FLASH 798518 798518 0 0.0
RAM 44012 44012 0 0.0
light-app-ota-shell-factory-data tl7218x FLASH 789732 789732 0 0.0
RAM 100756 100756 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 715888 715888 0 0.0
RAM 54236 54236 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 749244 749244 0 0.0
RAM 77384 77384 0 0.0
light-switch-app-ota-factory-data tl3218x_retention FLASH 726034 726034 0 0.0
RAM 36984 36984 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 606024 606024 0 0.0
RAM 112564 112564 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 822452 822456 4 0.0
RAM 99152 99152 0 0.0

Copy link

github-actions bot commented Aug 20, 2025

PR #40658: Size comparison from 4050ccd to 70be118

Full report (37 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, efr32, esp32, nrfconnect, nxp, psoc6, qpg, realtek, stm32, telink)
platform target config section 4050ccd 70be118 change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1105864 1105864 0 0.0
RAM 179018 179018 0 0.0
bl702 lighting-app bl702+eth FLASH 659198 659198 0 0.0
RAM 135025 135025 0 0.0
bl702+wifi FLASH 836370 836370 0 0.0
RAM 124509 124509 0 0.0
bl706+mfd+rpc+littlefs FLASH 1068378 1068378 0 0.0
RAM 117349 117349 0 0.0
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 897816 897816 0 0.0
RAM 105660 105660 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 981530 981530 0 0.0
RAM 109844 109844 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 768324 768324 0 0.0
RAM 103392 103392 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 779944 779944 0 0.0
RAM 108560 108560 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 725516 725516 0 0.0
RAM 96932 96932 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 709992 709992 0 0.0
RAM 97140 97140 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 552230 552230 0 0.0
RAM 205120 205120 0 0.0
lock CC3235SF_LAUNCHXL FLASH 584546 584546 0 0.0
RAM 205352 205352 0 0.0
efr32 lock-app BRD4187C FLASH 959792 959792 0 0.0
RAM 122696 122696 0 0.0
BRD4338a FLASH 755224 755216 -8 -0.0
RAM 252020 252020 0 0.0
window-app BRD4187C FLASH 1053908 1053908 0 0.0
RAM 118892 118892 0 0.0
esp32 all-clusters-app c3devkit DRAM 102536 102536 0 0.0
FLASH 1769488 1769546 58 0.0
IRAM 83862 83862 0 0.0
m5stack DRAM 121388 121388 0 0.0
FLASH 1716766 1716834 68 0.0
IRAM 117051 117051 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 911748 911748 0 0.0
RAM 152894 152894 0 0.0
nxp contact mcxw71+release FLASH 632424 632424 0 0.0
RAM 64124 64124 0 0.0
lock mcxw71+release FLASH 742208 742208 0 0.0
RAM 65200 65200 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1661556 1661556 0 0.0
RAM 211216 211216 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1582884 1582884 0 0.0
RAM 208480 208480 0 0.0
light cy8ckit_062s2_43012 FLASH 1453844 1453844 0 0.0
RAM 197200 197200 0 0.0
lock cy8ckit_062s2_43012 FLASH 1486172 1486172 0 0.0
RAM 224920 224920 0 0.0
qpg lighting-app qpg6200+debug FLASH 820952 820952 0 0.0
RAM 127644 127644 0 0.0
lock-app qpg6200+debug FLASH 758284 758284 0 0.0
RAM 118604 118604 0 0.0
realtek light-switch-app rtl8777g FLASH 704008 704008 0 0.0
RAM 106676 106676 0 0.0
lighting-app rtl8777g FLASH 755592 755592 0 0.0
RAM 127056 127056 0 0.0
stm32 light STM32WB5MM-DK FLASH 468028 468028 0 0.0
RAM 141400 141400 0 0.0
telink bridge-app tl7218x FLASH 709978 709978 0 0.0
RAM 93472 93472 0 0.0
light-app-ota-compress-lzma-shell-factory-data tl3218x FLASH 798890 798890 0 0.0
RAM 44032 44032 0 0.0
light-app-ota-shell-factory-data tl7218x FLASH 790104 790104 0 0.0
RAM 100776 100776 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 716262 716262 0 0.0
RAM 54260 54260 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 749618 749618 0 0.0
RAM 77408 77408 0 0.0
light-switch-app-ota-factory-data tl3218x_retention FLASH 726408 726408 0 0.0
RAM 37008 37008 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 606396 606396 0 0.0
RAM 112584 112584 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 822824 822828 4 0.0
RAM 99172 99172 0 0.0

Copy link

github-actions bot commented Aug 20, 2025

PR #40658: Size comparison from 4050ccd to e1c42ca

Full report (37 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, efr32, esp32, nrfconnect, nxp, psoc6, qpg, realtek, stm32, telink)
platform target config section 4050ccd e1c42ca change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1105864 1105864 0 0.0
RAM 179018 179018 0 0.0
bl702 lighting-app bl702+eth FLASH 659198 659198 0 0.0
RAM 135025 135025 0 0.0
bl702+wifi FLASH 836370 836370 0 0.0
RAM 124509 124509 0 0.0
bl706+mfd+rpc+littlefs FLASH 1068378 1068378 0 0.0
RAM 117349 117349 0 0.0
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 897816 897816 0 0.0
RAM 105660 105660 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 981530 981530 0 0.0
RAM 109844 109844 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 768324 768324 0 0.0
RAM 103392 103392 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 779944 779944 0 0.0
RAM 108560 108560 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 725516 725516 0 0.0
RAM 96932 96932 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 709992 709992 0 0.0
RAM 97140 97140 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 552230 552230 0 0.0
RAM 205120 205120 0 0.0
lock CC3235SF_LAUNCHXL FLASH 584546 584546 0 0.0
RAM 205352 205352 0 0.0
efr32 lock-app BRD4187C FLASH 959792 959792 0 0.0
RAM 122696 122696 0 0.0
BRD4338a FLASH 755224 755216 -8 -0.0
RAM 252020 252020 0 0.0
window-app BRD4187C FLASH 1053908 1053908 0 0.0
RAM 118892 118892 0 0.0
esp32 all-clusters-app c3devkit DRAM 102536 102536 0 0.0
FLASH 1769488 1769626 138 0.0
IRAM 83862 83862 0 0.0
m5stack DRAM 121388 121388 0 0.0
FLASH 1716766 1716966 200 0.0
IRAM 117051 117051 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 911748 911748 0 0.0
RAM 152894 152894 0 0.0
nxp contact mcxw71+release FLASH 632424 632424 0 0.0
RAM 64124 64124 0 0.0
lock mcxw71+release FLASH 742208 742208 0 0.0
RAM 65200 65200 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1661556 1661556 0 0.0
RAM 211216 211216 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1582884 1582884 0 0.0
RAM 208480 208480 0 0.0
light cy8ckit_062s2_43012 FLASH 1453844 1453844 0 0.0
RAM 197200 197200 0 0.0
lock cy8ckit_062s2_43012 FLASH 1486172 1486172 0 0.0
RAM 224920 224920 0 0.0
qpg lighting-app qpg6200+debug FLASH 820952 820952 0 0.0
RAM 127644 127644 0 0.0
lock-app qpg6200+debug FLASH 758284 758284 0 0.0
RAM 118604 118604 0 0.0
realtek light-switch-app rtl8777g FLASH 704008 704008 0 0.0
RAM 106676 106676 0 0.0
lighting-app rtl8777g FLASH 755592 755592 0 0.0
RAM 127056 127056 0 0.0
stm32 light STM32WB5MM-DK FLASH 468028 468028 0 0.0
RAM 141400 141400 0 0.0
telink bridge-app tl7218x FLASH 709978 709978 0 0.0
RAM 93472 93472 0 0.0
light-app-ota-compress-lzma-shell-factory-data tl3218x FLASH 798890 798890 0 0.0
RAM 44032 44032 0 0.0
light-app-ota-shell-factory-data tl7218x FLASH 790104 790104 0 0.0
RAM 100776 100776 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 716262 716262 0 0.0
RAM 54260 54260 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 749618 749618 0 0.0
RAM 77408 77408 0 0.0
light-switch-app-ota-factory-data tl3218x_retention FLASH 726408 726408 0 0.0
RAM 37008 37008 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 606396 606396 0 0.0
RAM 112584 112584 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 822824 822828 4 0.0
RAM 99172 99172 0 0.0

void CameraAVStreamManager::OnVideoStreamAllocated(const VideoStreamStruct & allocatedStream, bool shouldStartNewVideo)
{
// Only start the video stream if the flag indicates we should (new allocation or configuration changed)
if (shouldStartNewVideo)
Copy link
Contributor

Choose a reason for hiding this comment

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

If the stream is getting re-used, then there is an already active stream. If that was modified, then the stream needs to be stopped and restarted with the new parameters.

following command:

```
v4l2-ctl -d /dev/video0 --list-formats-ext
Copy link
Contributor

Choose a reason for hiding this comment

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

Would recommend adding a v4l2-ctl --list-devices command to list the device that is connected before using it in the command above to list the formats.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants