michaelbelgium / youtube-to-mp3
Convert and search youtube video's via your own API
Fund package maintenance!
MichaelBelgium
www.paypal.com/donate/?hosted_button_id=ZJSKX2ASR3ARL
Installs: 960
Dependents: 0
Suggesters: 0
Security: 0
Stars: 156
Watchers: 10
Forks: 49
Open Issues: 2
Type:project
Requires
- php: >=7.4
- ext-json: *
- google/apiclient: ^2.0
- norkunas/youtube-dl-php: ^2.0
Requires (Dev)
- phpstan/phpstan: ^1.3
README
With these files you are able to create your own Youtube API with ability to search also.
Laravel version of this package
Software requirements
General installation
First we install the dependencies on the server, then website.
VPS
- Install ffmpeg (+ libmp3lame - see wiki for tutorial)
- install youtube-dl or yt-dlp
Website
- Get a google developer api key
- Go to your webserver files to run composer into
- Run
composer create-project michaelbelgium/youtube-to-mp3 [directoryname]
- wheredirectoryname
is .. a directory where people can access the API from.
Configuration
Setting options are available in src/Config.php
Documentation
Check out the wiki for more docs.
Docker
You can deploy this API using docker-compose.yml
and the Dockerfile
to build from. Please add your google API Key to the .env
file.
It will expose port 80 from the container, out to port 80 on the host. This can also be changed in .env
under HOST_PORT. The docker image uses yt-dlp.
How to run with docker-compose
Put docker-compose.yml and Dockerfile together in a new, empty folder. Create .env
, and set the values listed in the example .env
in this repo.
To run, use the following command:
docker-compose up -d
To stop:
docker-compose down
# Or use this to remove the attached volume, to clear up space-
docker-compose down -v
Changing API Key?
If you are changing your API key, the change will not reflect until you have removed the attached docker volume and restarted the container. Another option is to enter the container and go to src/Config.php
and manually change it, or mount the config in as a separate volume.