UNPKG

react-video-thumbnail-image

Version:

Create a thumbnail image of video by providing any url.

61 lines (43 loc) 2.03 kB
# React Video Thumbnail Image Given a video url, attempt to generate a video thumbnail image using HTML Canvas Element Note*: The **`<Canvas>`** element will only be able to generate a thumbnail image, if CORS allows it. If not, you may see a similar console error as below: ``` DOMException: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Canvas may not be exported. ``` Please read about [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS), if you would like more details on how it works. ## Installation ```bash git clone https://github.com/saad3074/react-video-thumbnail-image.git ``` OR ```bash npm install --save-dev react-video-thumbnail-image ``` ## Usage ```es6 import VideoImageThumbnail from 'react-video-thumbnail-image'; // use npm published version ... <VideoImageThumbnail videoUrl="https://dl.dropboxusercontent.com/s/pkz1yguv8vcs7k1/cover.mp4?dl=0" thumbnailHandler={(thumbnail) => console.log(thumbnail)} width={120} height={80} alt="my test video" /> ``` ## Properties | Prop Name | Type | Default | Description | | --- | --- | --- | --- | | **videoUrl** (Required) | **string** | | The url of the video you want to generate a thumbnail from | | **cors** | **bool** | false |Whether or not to set **crossOrigin** attribute to **anonymous**. | | **height** | **int** | | Resize thumbnail to specified height | | **renderThumbnailHtml** | **bool** | true | Whether to render an image tag and show the thumbnail or return base 64 image only. | | **snapshotAtTime** | **int** | 2 | The second at which the component should snap the image at. | | **thumbnailHandler** | **func** | | Callback function that takes in **thumbnail** url as an argument | | **width** | **int** | | Resize thumbnail to specified width | | **alt** | **string** | | image alt text | *Note: The longer the snapshotAtTime, the more video data it may have to download. ## Examples ## Contributors - Saeed Ullah Khan [@saad3074](https://github.com/saad3074)