Closed
Bug 1340398
Opened 8 years ago
Closed 8 years ago
Use NV12 DXGI format when using DXVA2 with D3D11
Categories
(Core :: Audio/Video: Playback, defect)
Core
Audio/Video: Playback
Tracking
()
RESOLVED
FIXED
mozilla55
Tracking | Status | |
---|---|---|
firefox55 | --- | fixed |
People
(Reporter: bas.schouten, Assigned: bas.schouten)
References
Details
Attachments
(3 files)
This will save us significantly on sampler load on the GPU.
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment 3•8 years ago
|
||
mozreview-review |
Comment on attachment 8838386 [details]
Bug 1340398 - Part 1: Allow SyncObject usage for different devices.
https://reviewboard.mozilla.org/r/113324/#review114834
Attachment #8838386 -
Flags: review?(matt.woodrow) → review+
Comment 4•8 years ago
|
||
mozreview-review |
Comment on attachment 8838386 [details]
Bug 1340398 - Part 1: Allow SyncObject usage for different devices.
https://reviewboard.mozilla.org/r/113324/#review114840
::: gfx/layers/d3d11/CompositorD3D11.cpp:876
(Diff revision 2)
>
> SetSamplerForSamplingFilter(texturedEffect->mSamplingFilter);
> }
> break;
> + case EffectTypes::NV12:
> + {
nit: placement of { isn't consistent with the rest here.
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Assignee | ||
Comment 10•8 years ago
|
||
Matt, note it's mistakingly suggesting you reviewed part 1. My reorder confused reviewboard :)
Comment 11•8 years ago
|
||
mozreview-review |
Comment on attachment 8838386 [details]
Bug 1340398 - Part 1: Allow SyncObject usage for different devices.
https://reviewboard.mozilla.org/r/113324/#review118424
::: gfx/layers/client/TextureClient.h:107
(Diff revision 4)
> public:
> MOZ_DECLARE_REFCOUNTED_VIRTUAL_TYPENAME(SyncObject)
> virtual ~SyncObject() { }
>
> - static already_AddRefed<SyncObject> CreateSyncObject(SyncHandle aHandle);
> + static already_AddRefed<SyncObject> CreateSyncObject(SyncHandle aHandle,
> + void* aNativeData = nullptr);
Can we just make this extra parameter #ifdef XP_WIN and then use the real type?
static_cast always makes me a little bit sad.
Comment 12•8 years ago
|
||
mozreview-review |
Comment on attachment 8842985 [details]
Bug 1340398 - Part 3: Use NV12 format by default.
https://reviewboard.mozilla.org/r/116724/#review118436
::: gfx/layers/D3D11ShareHandleImage.cpp:196
(Diff revision 1)
> already_AddRefed<TextureClient>
> D3D11RecycleAllocator::CreateOrRecycleClient(gfx::SurfaceFormat aFormat,
> const gfx::IntSize& aSize)
> {
> + TextureAllocationFlags allocFlags = TextureAllocationFlags::ALLOC_DEFAULT;
> + if (gfxPrefs::PDMWMFUseSyncTexture()) {
This can be called off the main thread, right?
Should probably cache the value in case it changes between calls.
Attachment #8842985 -
Flags: review?(matt.woodrow) → review+
Comment 13•8 years ago
|
||
mozreview-review |
Comment on attachment 8842403 [details]
Bug 1340398 - Part 2: Support NV12 texture hosts in CompositorD3D11.
https://reviewboard.mozilla.org/r/116270/#review118438
Attachment #8842403 -
Flags: review?(matt.woodrow) → review+
Assignee | ||
Comment 14•8 years ago
|
||
mozreview-review |
Comment on attachment 8842985 [details]
Bug 1340398 - Part 3: Use NV12 format by default.
https://reviewboard.mozilla.org/r/116724/#review119604
::: gfx/layers/D3D11ShareHandleImage.cpp:196
(Diff revision 1)
> already_AddRefed<TextureClient>
> D3D11RecycleAllocator::CreateOrRecycleClient(gfx::SurfaceFormat aFormat,
> const gfx::IntSize& aSize)
> {
> + TextureAllocationFlags allocFlags = TextureAllocationFlags::ALLOC_DEFAULT;
> + if (gfxPrefs::PDMWMFUseSyncTexture()) {
I'll make this pref none-live.
Comment 15•8 years ago
|
||
Pushed by bschouten@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/588942cf8807
Part 1: Allow SyncObject usage for different devices. r=mattwoodrow
https://hg.mozilla.org/integration/mozilla-inbound/rev/a8af64e23154
Part 2: Support NV12 texture hosts in CompositorD3D11. r=mattwoodrow
https://hg.mozilla.org/integration/mozilla-inbound/rev/7d0a9bb0a642
Part 3: Use NV12 format by default. r=mattwoodrow
I had to back these out for static build failures like https://treeherder.mozilla.org/logviewer.html#?job_id=82256847&repo=mozilla-inbound
https://hg.mozilla.org/integration/mozilla-inbound/rev/db74935c78fa
Flags: needinfo?(bas)
Assignee | ||
Comment 17•8 years ago
|
||
(In reply to Wes Kocher (:KWierso) from comment #16)
> I had to back these out for static build failures like
> https://treeherder.mozilla.org/logviewer.html#?job_id=82256847&repo=mozilla-
> inbound
>
> https://hg.mozilla.org/integration/mozilla-inbound/rev/db74935c78fa
Ugh, I don't even think that's actually wrong, it's just forcing me to make the code uglier. Oh well.
Flags: needinfo?(bas)
Comment 18•8 years ago
|
||
Pushed by bschouten@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/b94a413fe46a
Part 1: Allow SyncObject usage for different devices. r=mattwoodrow
https://hg.mozilla.org/integration/mozilla-inbound/rev/be80dc74a965
Part 2: Support NV12 texture hosts in CompositorD3D11. r=mattwoodrow
https://hg.mozilla.org/integration/mozilla-inbound/rev/0d4603ebe97e
Part 3: Use NV12 format by default. r=mattwoodrow
Comment 19•8 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/b94a413fe46a
https://hg.mozilla.org/mozilla-central/rev/be80dc74a965
https://hg.mozilla.org/mozilla-central/rev/0d4603ebe97e
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
status-firefox55:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
You need to log in
before you can comment on or make changes to this bug.
Description
•