-
Notifications
You must be signed in to change notification settings - Fork 630
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
Enable MPEG4 GPU decoding #4327
Conversation
a4c13c5
to
f31a9ca
Compare
CI MESSAGE: [6150118]: BUILD STARTED |
CI MESSAGE: [6150118]: BUILD FAILED |
CI MESSAGE: [6156570]: BUILD STARTED |
CI MESSAGE: [6156570]: BUILD FAILED |
1593e69
to
0637df9
Compare
CI MESSAGE: [6158066]: BUILD FAILED |
CI MESSAGE: [6168512]: BUILD STARTED |
Needs NVIDIA/DALI_extra#108 |
CI MESSAGE: [6168512]: BUILD FAILED |
CI MESSAGE: [6168587]: BUILD STARTED |
CI MESSAGE: [6168587]: BUILD FAILED |
CI MESSAGE: [6171107]: BUILD STARTED |
CI MESSAGE: [6171107]: BUILD FAILED |
CI MESSAGE: [6173380]: BUILD STARTED |
CI MESSAGE: [6173380]: BUILD FAILED |
CI MESSAGE: [6180038]: BUILD STARTED |
if (init_codecs) { | ||
for (size_t i = 0; i < av_state_->ctx_->nb_streams; ++i) { | ||
av_state_->codec_params_ = av_state_->ctx_->streams[i]->codecpar; | ||
av_state_->codec_ = avcodec_find_decoder(av_state_->codec_params_->codec_id); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know that this new code path with init_codecs
is needed here, because this call fails for AV_CODEC_ID_MPEG4
. Do you know why it does?
We compile FFMPEG without libxvid
because it is GPL but there is this other native mpeg4
thing. Our build of FFMPEG does not include it but maybe it should? We could avoid this new code path and we would be able to have this working in other scenarios as well (like CPU, indexed).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Our build configuration doesn't list anything with mpeg in the name in the Enabled decoders:
list. I guess we would need to use "--enable-gpl" or "--enable-nonfree" but we can't due to the license.
If we move to a solution where we can use the libaviutils the user may have installed separately we can lose that limitation.
Still, this code path should be better as we avoid unnecessary codec initialization on the CPU.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will investigate, if we need "--enable-gpl" or "--enable-nonfree". We need it for libxvid
but I am not 100% that we need it for native mpeg4
decoder. Is that fine?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suggest to merge this PR and enable mpeg4 support for CPU separately as the GPU support is more important for us.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
#4361 should cover both CPU and GPU MPEG-4 Part2 decoding.
CI MESSAGE: [6180038]: BUILD PASSED |
CI MESSAGE: [6181414]: BUILD STARTED |
CI MESSAGE: [6181414]: BUILD FAILED |
CI MESSAGE: [6181609]: BUILD STARTED |
CI MESSAGE: [6181609]: BUILD FAILED |
CI MESSAGE: [6183020]: BUILD STARTED |
CI MESSAGE: [6183020]: BUILD PASSED |
CI MESSAGE: [6184428]: BUILD STARTED |
CI MESSAGE: [6184428]: BUILD PASSED |
- enables MPEG4 support in the GPU frame decoder without index Signed-off-by: Janusz Lisiecki <jlisiecki@nvidia.com>
Signed-off-by: Janusz Lisiecki <jlisiecki@nvidia.com>
!build |
CI MESSAGE: [6230031]: BUILD STARTED |
CI MESSAGE: [6230031]: BUILD FAILED |
CI MESSAGE: [6230031]: BUILD PASSED |
without index
Signed-off-by: Janusz Lisiecki jlisiecki@nvidia.com
Category:
New feature (non-breaking change which adds functionality)
Description:
without index
Additional information:
Affected modules and functionalities:
Key points relevant for the review:
Tests:
Checklist
Documentation
DALI team only
Requirements
REQ IDs: N/A
JIRA TASK: DALI-3038