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

1. Added motion vector as 2nd output from the H264EncoderV4l2 module. #242

Merged
merged 6 commits into from
Aug 25, 2023

Conversation

mohammedzakikochargi
Copy link
Collaborator

@mohammedzakikochargi mohammedzakikochargi commented Jun 22, 2023

IMPORTANT: All PRs must be linked to an issue (except for extremely trivial and straightforward changes).

Fixes #240

Description
Implemented 2nd output from H264EncoderV4L2 module as motion vector frame apart from h264 encoded frames

Precise description of the changes in this pull request
During h264 encoding motion vectors are generated as difference in motion vectors between two subsequent frames. It is the process by which frames can be assessed for similarities between frames that can reused. The same motion vectors are extracted and serialized using overlay module, and it is send as 2nd output from H264EncoderV4L2 module apart from h264 encoded frames. Also added props to enable or disable motion vector frame

Alternative(s) considered

Have you considered any alternatives? And if so, why have you chosen the approach in this PR?

Type

Type Choose one: (Feature)

Screenshots (if applicable)

Checklist

  • I have read the Contribution Guidelines
  • I have written Unit Tests
  • I have discussed my proposed solution with code owners in the linked issue(s) and we have agreed upon the general approach

@github-actions
Copy link

github-actions bot commented Jun 22, 2023

Test Results Linux-CudaT

    1 files  ±0      1 suites  ±0   10m 24s ⏱️ -1s
403 tests ±0  237 ✔️ ±0  166 💤 ±0  0 ±0 
237 runs  ±0    71 ✔️ ±0  166 💤 ±0  0 ±0 

Results for commit d39ede2. ± Comparison against base commit 13a6be8.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Jun 22, 2023

Test Results Windows-cuda

    1 files  ±0      1 suites  ±0   12m 42s ⏱️ ±0s
399 tests ±0  293 ✔️ ±0  106 💤 ±0  0 ±0 
293 runs  ±0  187 ✔️ ±0  106 💤 ±0  0 ±0 

Results for commit d39ede2. ± Comparison against base commit 13a6be8.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Jun 22, 2023

Test Results Win-nocuda

    1 files      1 suites   10m 43s ⏱️
298 tests 230 ✔️ 68 💤 0
230 runs  162 ✔️ 68 💤 0

Results for commit d39ede2.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Jun 22, 2023

Test Results Linux

    1 files      1 suites   10m 23s ⏱️
302 tests 230 ✔️ 72 💤 0
230 runs  158 ✔️ 72 💤 0

Results for commit d39ede2.

♻️ This comment has been updated with latest results.

@github-actions
Copy link

github-actions bot commented Jun 22, 2023

Test Results Linux_ARM64

    1 files  ±0      1 suites  ±0   10m 49s ⏱️ -11s
425 tests  - 3  262 ✔️  - 3  163 💤 ±0  0 ±0 
262 runs   - 3    99 ✔️  - 3  163 💤 ±0  0 ±0 

Results for commit d39ede2. ± Comparison against base commit 13a6be8.

This pull request removes 4 and adds 1 tests. Note that renamed tests count towards both.
h264encoderv4l2helper_tests ‑ memory_cache_free_test
h264encoderv4l2helper_tests ‑ rgb24_black
h264encoderv4l2helper_tests ‑ yuv420_black
h264encoderv4l2helper_tests ‑ yuv420_black_dmabuf
h264encoderv4l2_tests ‑ encode_and_extract_motion_vectors

♻️ This comment has been updated with latest results.

@kumaakh kumaakh force-pushed the h264EncoderV4L2MotionVectorPin branch from 2f428b6 to bacb4c6 Compare July 4, 2023 12:35
@mraduldubey mraduldubey added the enhancement New feature or request label Jul 28, 2023
Copy link
Collaborator

@mraduldubey mraduldubey left a comment

Choose a reason for hiding this comment

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

remove tests which are not required

base/include/H264EncoderV4L2Helper.h Outdated Show resolved Hide resolved
base/src/H264EncoderV4L2.cpp Outdated Show resolved Hide resolved
base/src/H264EncoderV4L2.cpp Show resolved Hide resolved
base/src/H264EncoderV4L2Helper.cpp Outdated Show resolved Hide resolved
base/src/H264EncoderV4L2Helper.cpp Outdated Show resolved Hide resolved
base/test/h264encoderv4l2_tests.cpp Show resolved Hide resolved
base/test/h264encoderv4l2_tests.cpp Show resolved Hide resolved
@mraduldubey mraduldubey merged commit 58033f6 into main Aug 25, 2023
17 of 19 checks passed
@mraduldubey mraduldubey deleted the h264EncoderV4L2MotionVectorPin branch August 25, 2023 16:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add motion vector frame as 2nd output pin from H264EncoderV4L2 module
2 participants