corbpie / streamable-dl
Class to download streamable videos
v1.3
2024-02-09 10:27 UTC
Requires
- php: ^8.2
- ext-curl: *
- ext-dom: *
README
A PHP class to download streamable videos from their URL
Usage
Install with:
composer require corbpie/streamable-dl
Usage example:
<?php require('vendor/autoload.php'); use Corbpie\StreamableDl\StreamableDL;
Download a video
$url = "https://streamable.com/8mr65";//200 link $save_as = "test.mp4"; $sdl = new StreamableDL($url, $save_as); echo json_encode($sdl->downloadVideo());
The output will be:
[ { "date_time": "2021-10-27 09:43:25", "task": "doCurl", "args": [ "https:\/\/streamable.com\/8mr65" ], "http_code": 200 }, { "date_time": "2021-10-27 09:43:25", "task": "getVideoDirectLink", "link": "https:\/\/cdn-cf-east.streamable.com\/video\/mp4\/8mr65.mp4?Expires=1635546720&Signature=XYZABC123&Key-Pair-Id=ABC098" }, { "date_time": "2021-10-27 09:43:36", "task": "saveVideoFile", "args": [], "result": 3610791 }, { "date_time": "2021-10-27 09:43:36", "task": "downloadVideo", "message": "Downloaded video", "saved_as": "test.mp4" } ]
If you have an invalid URL (404 HTTP code):
[ { "date_time": "2021-10-27 09:51:55", "task": "doCurl", "args": [ "https:\/\/streamable.com\/ABC123", "https:\/\/reddit.com\/" ], "http_code": 404 }, { "date_time": "2021-10-27 09:51:55", "task": "downloadVideo", "message": "Failed to get video url", "http_code": 404 } ]
Note To get video file information with getVideoDetails()
you need FFmpeg (FFprobe) installed.