use-cloudinary-docs

useVideo

The useVideo hook gives you the ability to call an image from your Cloudinary account and apply transformations. The result is a URL generated by the SDK.

import { useVideo } from 'use-cloudinary'
function Video({ publicId, transformations, width, height }) {
const { generateUrl, url, isLoading, isError, error } = useImage({ cloudName: 'testing-hooks-upload' });
React.useEffect(() => {
// the `generateUrl` function will hook internally to the SDK and do a lot of the heavy lifting for generating your video url
generateUrl({
publicId,
transformations: {
// by supplying height and width separately from the transformations object,
// we can use the height and width to dictate the size of the element AND the transformations
height,
width,
// then we can spread the rest of the transformations in
...transformations
/*
you'll also be getting these automatically attached from internals
fetchFormat: 'auto',
quality: 'auto',
crop: 'scale'
*/
}
});
});
// status can either be "success", "loading", or "error"
if (isLoading) return <p>Loading...</p>;
// we can check if the status of our request is an error, and surface that error to our UI
if (isError) return <p>{error.message}</p>
return (
<video style={{ height: `${height}px`, width: `${width}px` }} autoPlay controls>
<source src={url} />
</video>
)
}

Args

KeyTypeRequired?Description
cloudNameStringYesYour Cloudinary cloud name, used to identify where we're getting our media from

Return values

KeyTypeDescription
generateUrlFuncAn async function that accepts options and returns the URL of your Cloudinary asset
urlundefined || StringWhen `generateUrl` is successful, `url` will return a URL string. More about React Query's return values here
isLoadingBoolean isLoading state returns a boolean if the query is in a "hard" loading state. This means no cached data and the query is currently fetching.here
isErrroBooleanisError returns a boolean (true) if the query attempt resulted in an error (otherwise false). More about React Query return vairables here
isSuccessBooleanisSuccess returns a boolean (true) if the query attempt resulted in an error (otherwise false).More about React Query return vairables here
isIdleBooleanisIdle returns a boolean (true) if the query is initialized with enabled: false and no initial data is available (otherwise false). More about React Query return vairables here
errorObjectOn failure, React Query returns an error object, surfacing the error message for use in the UI. More about React Query's return values here

generateUrl()

The generateUrl function is just a setState, used to fire off our internal query and pass our options into our SDK to generate our URL.

KeyTypeRequiredDescription
publicIdStringYesThe public id is the name used as a title for the media you want to call
transformationsObjectNoCheck out all the transformations you can apply to your videos here
Edit this page on GitHub