diff --git a/src/components/SampleLayout.tsx b/src/components/SampleLayout.tsx
index 419ad998..5b5d457e 100644
--- a/src/components/SampleLayout.tsx
+++ b/src/components/SampleLayout.tsx
@@ -66,6 +66,7 @@ const SampleLayout: React.FunctionComponent<
React.PropsWithChildren<{
name: string;
description: string;
+ originTrial?: string;
filename: string;
gui?: boolean;
init: SampleInit;
@@ -155,6 +156,7 @@ const SampleLayout: React.FunctionComponent<
/>
{`${props.name} - WebGPU Samples`}
+
{props.name}
diff --git a/src/sample/videoUploadingWebCodecs/main.ts b/src/sample/videoUploadingWebCodecs/main.ts
index 9e532203..9b1b611e 100644
--- a/src/sample/videoUploadingWebCodecs/main.ts
+++ b/src/sample/videoUploadingWebCodecs/main.ts
@@ -145,7 +145,13 @@ const init: SampleInit = async ({ canvas, pageState }) => {
const VideoUploadingWebCodecs: () => JSX.Element = () =>
makeSample({
name: 'Video Uploading with WebCodecs (Experimental)',
- description: 'This example shows how to upload VideoFrame to WebGPU.',
+ description: `This example shows how to upload a WebCodecs VideoFrame to WebGPU.
+ Support for using a VideoFrame as the source for a GPUExternalTexture requires
+ running Chrome with the "WebGPU Developer Features" flag or the WebGPU WebCodecs
+ integration origin trial.
+ See https://developer.chrome.com/origintrials/#/view_trial/1705738358866575361
+ `,
+ originTrial: 'Auo9JMDbdn/Jg1pd8liB9Ofp1OLzi9mecxjBBfjv/3f8O8775CXgcTobX4t6KYxMC1wnO4Z7MWArPSptGtkD2woAAABZeyJvcmlnaW4iOiJodHRwczovL3dlYmdwdS5naXRodWIuaW86NDQzIiwiZmVhdHVyZSI6IldlYkdQVVdlYkNvZGVjcyIsImV4cGlyeSI6MTcwMTk5MzU5OX0=',
init,
sources: [
{