Skip to content
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

imavid improvements + e2e #3893

Merged
merged 22 commits into from
Dec 14, 2023
Merged

imavid improvements + e2e #3893

merged 22 commits into from
Dec 14, 2023

Conversation

sashankaryal
Copy link
Contributor

@sashankaryal sashankaryal commented Dec 7, 2023

This PR:

  1. Updates dependency versions, including Playwright
  2. Fixes frame sync bug in imavid looker
  3. Fixes tagging issue in imavid
  4. Adds E2E tests for imavid playback and tagging
  5. Adds capability in image generator to print strings
  6. Minor cleanup and linting

@sashankaryal sashankaryal self-assigned this Dec 7, 2023
@sashankaryal sashankaryal requested a review from a team December 7, 2023 00:47
@sashankaryal sashankaryal changed the base branch from develop to feat/video-frames-tagging December 7, 2023 00:47
@sashankaryal sashankaryal changed the base branch from feat/video-frames-tagging to release/v0.23.1 December 7, 2023 16:55
@sashankaryal sashankaryal mentioned this pull request Dec 7, 2023
@sashankaryal sashankaryal marked this pull request as ready for review December 7, 2023 16:56
Comment on lines +391 to +401
if (isImaVidLookerActive) {
// assuming we're working with only one sample
(
lookerRef?.current as unknown as ImaVidLooker
)?.frameStoreController.store?.updateSample(
samples[0]._id,
samples[0]
);

lookerRef?.current?.updateSample(samples[0]);
}
Copy link
Contributor

@benjaminpkane benjaminpkane Dec 7, 2023

Choose a reason for hiding this comment

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

Can an instance check be used? ImaVidLooker can be added to the fos.Lookers union type

Suggested change
if (isImaVidLookerActive) {
// assuming we're working with only one sample
(
lookerRef?.current as unknown as ImaVidLooker
)?.frameStoreController.store?.updateSample(
samples[0]._id,
samples[0]
);
lookerRef?.current?.updateSample(samples[0]);
}
const looker = lookerRef?.current;
if (looker instanceof ImaVidLooker) {
looker.frameStoreController.store?.updateSample(
samples[0]._id,
samples[0]
);
looker.updateSample(samples[0]);
}

Copy link
Contributor

@benjaminpkane benjaminpkane Dec 7, 2023

Choose a reason for hiding this comment

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

Maybe a looker.updateSamples method could be added? Only one sample can be updated currently, but this would future proof selection/tagging changes and avoid accessing internal Looker data structures

Comment on lines +348 to +350
if (necessaryFrameRange[1] < necessaryFrameRange[0]) {
return;
}
Copy link
Contributor

Choose a reason for hiding this comment

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

Should this be possible? It looks like getLookAheadFrameRange should always return a valid range.

Base automatically changed from release/v0.23.1 to main December 8, 2023 22:50
@benjaminpkane benjaminpkane changed the base branch from main to release/v0.23.2 December 11, 2023 22:43
@sashankaryal sashankaryal merged commit 59c5bf9 into release/v0.23.2 Dec 14, 2023
13 checks passed
@sashankaryal sashankaryal deleted the refactor/imavid-e2e branch December 14, 2023 22:38
benjaminpkane pushed a commit that referenced this pull request Dec 20, 2023
* more range check validation

* fix tagging

* remove log

* fix imavid regression

* upgrade dep versions

* add watermarking option in image generator

* fix frame one-off frame sync bug

* move dynamic groups spec to groups folder

* move dynamic groups spec to groups folder

* add more data-cy attributes

* differentiate grid and modal taggers

* add speed controller

* add toggleRenderFramesAsVideo

* rename vars

* add imavid tests

* add screenshots

* add data-cy to pathvalueentry

* add tagging tests

* remove unused vars

* add modal tagger pom

* add label count and sample count getters in siderbar

* reset popups before play/pause
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants