New issue
Advanced search Search tips

Issue 775577 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug

Blocking:
issue 764779



Sign in to add a comment

d3d11 video decoder might not break out of "pick config" loop

Project Member Reported by liber...@chromium.org, Oct 17 2017

Issue description

when picking a decoder config, sandersd@ points out that this:

if (dec_config.ConfigBitstreamRaw == 2)
      break;

might never happen.  in which case, what should we do when the loop runs out of options?
 
Not a conclusion but some facts.
ConfigBitstreamRaw == 2 means it supports DXVA_Slice_H264_Short.
ConfigBitstreamRaw == 1 means it supports DXVA_Slice_H264_Long, which can also be populated from slice_hdr, pps, and sps data.
So if the driver only supports 1, then the accelerator could use the long format. But that has to be signaled to the accelerator.

OTOH, I think most drivers today support short format, and if it doesn't then init_cb(false) should be called.
Project Member

Comment 2 by bugdroid1@chromium.org, Dec 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5a1ce5c8d420373a64cd0ecc12284417eabdbc07

commit 5a1ce5c8d420373a64cd0ecc12284417eabdbc07
Author: liberato@chromium.org <liberato@chromium.org>
Date: Wed Dec 06 00:55:03 2017

Moved D3D11PictureBuffer into its own source files.

Bug:  775577 
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: I99dc244ceb3905fd55c948398a7991a5a019e669
Reviewed-on: https://chromium-review.googlesource.com/806734
Reviewed-by: Dan Sanders <sandersd@chromium.org>
Commit-Queue: Frank Liberato <liberato@chromium.org>
Cr-Commit-Position: refs/heads/master@{#521925}
[modify] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/BUILD.gn
[modify] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/d3d11_video_decode_accelerator_win.cc
[modify] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/windows/d3d11_h264_accelerator.cc
[modify] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/windows/d3d11_h264_accelerator.h
[add] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/windows/d3d11_picture_buffer.cc
[add] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/windows/d3d11_picture_buffer.h
[modify] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/windows/d3d11_video_decoder.cc
[modify] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/windows/d3d11_video_decoder.h
[modify] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/windows/d3d11_video_decoder_impl.cc
[modify] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/windows/d3d11_video_decoder_impl.h
[add] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/windows/init_guid.cc
[modify] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/windows/output_with_release_mailbox_cb.h
[add] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/gpu/windows/return_on_failure.h
[modify] https://crrev.com/5a1ce5c8d420373a64cd0ecc12284417eabdbc07/media/mojo/services/gpu_mojo_media_client.cc

Project Member

Comment 3 by bugdroid1@chromium.org, Dec 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/20b35ac0b91aeb12c32e00e9307f3743d277484b

commit 20b35ac0b91aeb12c32e00e9307f3743d277484b
Author: liberato@chromium.org <liberato@chromium.org>
Date: Wed Dec 06 15:20:46 2017

Remove D3D11 VDA.

This CL removes the WIP D3D11 VDA in favor of the D3D11 Mojo Video
Decoder WIP.

Bug:  775577 
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: Ie84276b35e274dff5e271be7ecad25e59ea4e7c3
Reviewed-on: https://chromium-review.googlesource.com/806237
Commit-Queue: Frank Liberato <liberato@chromium.org>
Reviewed-by: Dan Sanders <sandersd@chromium.org>
Cr-Commit-Position: refs/heads/master@{#522092}
[modify] https://crrev.com/20b35ac0b91aeb12c32e00e9307f3743d277484b/media/gpu/BUILD.gn
[delete] https://crrev.com/a30846fd08fdeeb39c0c98d79cb240d2e8a96a81/media/gpu/d3d11_video_decode_accelerator_win.cc
[delete] https://crrev.com/a30846fd08fdeeb39c0c98d79cb240d2e8a96a81/media/gpu/d3d11_video_decode_accelerator_win.h
[modify] https://crrev.com/20b35ac0b91aeb12c32e00e9307f3743d277484b/media/gpu/gpu_video_decode_accelerator_factory.cc

Project Member

Comment 4 by bugdroid1@chromium.org, Jan 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6e81422291cca43f41ec33393f9fbb9cc7c8f905

commit 6e81422291cca43f41ec33393f9fbb9cc7c8f905
Author: liberato@chromium.org <liberato@chromium.org>
Date: Fri Jan 05 06:14:12 2018

Move resource management into D3D11PictureBuffer

This CL moves most of the code that specific to the D3D11
PictureBuffer class into that class, from the decoder.  This makes
it much easier to separate the D3D device contexts and associated
threading issues.

It also adds an error state to the decoder, and NotifyError() to set
it / signal the error.

Bug:  775577 
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: If61e64dd19c76ebc7b2b7375fc11e4a1c92efc95
Reviewed-on: https://chromium-review.googlesource.com/737456
Commit-Queue: Frank Liberato <liberato@chromium.org>
Reviewed-by: Dan Sanders <sandersd@chromium.org>
Cr-Commit-Position: refs/heads/master@{#527228}
[modify] https://crrev.com/6e81422291cca43f41ec33393f9fbb9cc7c8f905/media/gpu/windows/d3d11_h264_accelerator.cc
[modify] https://crrev.com/6e81422291cca43f41ec33393f9fbb9cc7c8f905/media/gpu/windows/d3d11_picture_buffer.cc
[modify] https://crrev.com/6e81422291cca43f41ec33393f9fbb9cc7c8f905/media/gpu/windows/d3d11_picture_buffer.h
[modify] https://crrev.com/6e81422291cca43f41ec33393f9fbb9cc7c8f905/media/gpu/windows/d3d11_video_decoder_impl.cc
[modify] https://crrev.com/6e81422291cca43f41ec33393f9fbb9cc7c8f905/media/gpu/windows/d3d11_video_decoder_impl.h

Status: Fixed (was: Assigned)

Sign in to add a comment