Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rezkhaleghi/pj-player
pjplayer is a Rust-based CLI tool that allows you to search, download, and stream audio directly from your terminal. It supports platforms like YouTube and Internet Archive.
https://github.com/rezkhaleghi/pj-player
ffmpeg ffplay free-music-download media-player music music-download music-player music-streaming player rust rust-lang terminal-player tui youtube-downloader youtube-stream yt-dlp
Last synced: about 7 hours ago
JSON representation
pjplayer is a Rust-based CLI tool that allows you to search, download, and stream audio directly from your terminal. It supports platforms like YouTube and Internet Archive.
- Host: GitHub
- URL: https://github.com/rezkhaleghi/pj-player
- Owner: rezkhaleghi
- Created: 2024-11-28T20:55:03.000Z (24 days ago)
- Default Branch: main
- Last Pushed: 2024-12-07T02:11:02.000Z (15 days ago)
- Last Synced: 2024-12-21T06:50:31.840Z (1 day ago)
- Topics: ffmpeg, ffplay, free-music-download, media-player, music, music-download, music-player, music-streaming, player, rust, rust-lang, terminal-player, tui, youtube-downloader, youtube-stream, yt-dlp
- Language: Rust
- Homepage:
- Size: 47 MB
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PJ-Player
PJ-Player is a Rust-based terminal application (TUI) that allows users to search, DOWNLOAD or STREAM audio tracks directly from the terminal. It supports downloading and streaming from YouTube and Internet Archive.
# DEMO
![Project Demo](/demos/demo.gif)
## Features
- **Search for audio** on YouTube or Internet Archive.
- **Stream audio** on YouTube.
- **Download audio** from YouTube or Internet Archive.## Requirements
Before running PJ-Player, you need to ensure that the following dependencies are installed on your system:
- **Rust**: This project is written in Rust. Install Rust by following the instructions at [https://www.rust-lang.org/tools/install](https://www.rust-lang.org/tools/install).
- **yt-dlp**: A YouTube downloader tool. Install it from [https://github.com/yt-dlp/yt-dlp](https://github.com/yt-dlp/yt-dlp).
- **ffmpeg**: A complete, cross-platform solution to record, convert and stream audio and video. Install it from [https://ffmpeg.org/](https://ffmpeg.org/).## Installation
To use [`PJ-Player`]
1. **Clone the Repository**:
Clone this repository to your local machine:```sh
git clone https://github.com/rezkhaleghi/pj-player.git
cd pj-player
```2. **Install Dependencies** (if not already installed):
- Install Dependencies Manually
- OR Run the install.sh (for macos: install-macos.sh) script in bin Directory
(Assuming your in the /pj-player Directory)```sh
./bin/install.sh
```3. **Build the Project**:
Build the pjgrep application with the following command:```sh
cargo build --release
```4. **Install the Binary**:
Optionally, you can copy the binary to a directory in your `$PATH` (e.g., `/usr/local/bin` or `~/bin`) for easy access:```sh
sudo cp target/release/pjplayer /usr/local/bin/pjplayer
```## Usage
1. **Run the application**:
```sh
pjplayer
```2. **Select DONLOAD / STREAM**:
![Project Demo](/demos/1-select-mode.jpeg)3. **Search For Your Favorite Song/Podcast**:
![Project Demo](/demos/2-search.jpeg)
4. **Select One of Search Results**:
![Project Demo](/demos/3-select.jpeg)
5. **Stream Or Download The Content**:
- Stream
![Project Demo](/demos/4-stream.jpeg)
- Download
![Project Demo](/demos/5-dl.jpeg)## Contributing
Contributions are welcome! Please open an issue or submit a pull request on GitHub.
## Author
Created and maintained by "PocketJack (Rez Khaleghi)"
- GitHub: https://github.com/rezkhaleghi
- Email: [email protected]## License
This project is licensed under the MIT License. See the LICENSE file for details.
## Acknowledgements
- [Rust Programming Language](https://www.rust-lang.org/)