Play music files on Google Drive
Project description
gdriveaudio
Play audio files in the google drive.
Requirments
- Python3
- MPlayer and FFmpeg
- Google account, access to the google cloud platform
Set up with Google cloud
Enable google drive API
- Log in to the google cloud console and create or choose the project to use.
- Go to Google Drive API page and enable it.
Create a service account to access google drive
- Log in to the google cloud console and create or choose the project to use.
- Go to IAM & Admin > Service Accounts.
- Click "CREATE SERVICE ACCOUNT".
- Type in an arbitrary service account name (e.g.
gdriveaudio-sa). - Click "DONE".
- Note the email address of the service account name (e.g.
gdriveaudio-sa@gdriveaudio-project.iam.gserviceaccount.com).
Give the service account the access to the music folder
- Open Google Drive.
- Open the folder that contains music files.
- Click the folder name and choose "Share".
- Paste the email address of the service account noted in the previous step.
- Click "Done".
Create the credentials file of the service account
- Log in to the google cloud console and choose the project to use.
- Open IAM & Admin > Service Accounts.
- Click the service account created above.
- Click "KEYS" in the top menu.
- Click "ADD KEY" and then "Create new key"
- Choose "JSON" key type and click "CREATE".
- Rename the downloaded file as
_credentials.jsonand move to a folder to use for this tool.
Install
# from pypi
$ pip3 install gdriveaudio
# from github
$ git clone --depth=1 https://github.com/kota7/gdriveaudio.git
$ pip3 install -U ./gdriveaudio
Start playing
For the program to locate the credential file, either
- Run the commands in the folder that has the "_credentials.json"
- Set
GDRIVEAUDIO_DIRECTORYenvironment variable as the directory containing "_credentials.json", or - Run the commands with
--workdir={directory}option to specify the directory containing "_credentials.json"
# Initialize data
# Delete pre-fetched data
# Create SQLite database file '_gdriveaudio.db'
$ gdriveaudio init
# Update data
# -U for updating file list
# -F for updating folder structure information
# -M for updating audio metadata (this can take hours)
$ gdriveaudio update -UF
# or
$ gdriveaudio update -UFM
# Play all files
$ gdriveaudio play
# Play files with some condition
# -k: case-insensitive keywords to search
# -K: case-sensitive keywords to search
# -q: Query inside 'WHERE' condition (follow SQLite dialect)
$ gdriveaudio play -k "beethoven"
$ gdriveaudio play -K "Michael J" # case sensitive search
$ gdriveaudio play -k "name:lucky" # search only inside 'name' field
$ gdriveaudio play -q "duration > 600" # 10+ min only
# Show data
# -k, -K, -q filters also work
$ gdriveaudio data -n 5
$ gdriveaudio data -n 10 -k "beethoven"
# See full command options
$ gdriveaudio -h
$ gdriveaudio {init,update,play,data} -h
The audio player can be controled by key strokes (See full description at man mplayer):
<- or -> seek backward/forward 10 seconds
down or up seek backward/forward 1 minute
pgdown or pgup seek backward/forward 10 minutes
< or > step backward/forward in playlist
p or SPACE pause movie (press any key to continue)
q or ESC stop playing and quit program
+ or - adjust audio delay by +/- 0.1 second
o cycle OSD mode: none / seekbar / seekbar + timer
* or / increase or decrease PCM volume
x or z adjust subtitle delay by +/- 0.1 second
r or t adjust subtitle position up/down, also see -vf expand
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
gdriveaudio-0.1.15.tar.gz
(12.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gdriveaudio-0.1.15.tar.gz.
File metadata
- Download URL: gdriveaudio-0.1.15.tar.gz
- Upload date:
- Size: 12.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9ced63b251018fc7816db10a3848deac18572c4181a094566356f4ef01df9a5e
|
|
| MD5 |
b3ba35c97df60af5ff4c9680bbb12711
|
|
| BLAKE2b-256 |
2c1bb67f8ace4cbe875a3bd2289b61d3b2551072b9110dbcd56bf7088a72c46d
|
File details
Details for the file gdriveaudio-0.1.15-py3-none-any.whl.
File metadata
- Download URL: gdriveaudio-0.1.15-py3-none-any.whl
- Upload date:
- Size: 11.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
27e8eacfbd51f9c16fce3c1bf1bce2963ab6baf1fa26b44b8460746ac69ab905
|
|
| MD5 |
53827fa4ed17016969af9b05a268268c
|
|
| BLAKE2b-256 |
f73c1976063c3fb313fb42429c1a28fe659572a6ca6d77e4c34c1c5cc83cbda9
|