Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rafaelclaumann/m3u8_playlist_editor
Python CLI to manage m3u8 playlists.
https://github.com/rafaelclaumann/m3u8_playlist_editor
iptv iptv-m3u iptv-m3u8 m3u m3u-parser m3u8 m3u8-parser python
Last synced: about 1 month ago
JSON representation
Python CLI to manage m3u8 playlists.
- Host: GitHub
- URL: https://github.com/rafaelclaumann/m3u8_playlist_editor
- Owner: RafaelClaumann
- Created: 2024-07-11T23:24:50.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-07-31T23:58:30.000Z (5 months ago)
- Last Synced: 2024-08-01T02:57:23.948Z (5 months ago)
- Topics: iptv, iptv-m3u, iptv-m3u8, m3u, m3u-parser, m3u8, m3u8-parser, python
- Language: Python
- Homepage:
- Size: 156 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# M3U8 Playlist Editor
A simple CLI to edit M3U8 playlists that allows you to manage and modify playlists.
## Features
- **Load Playlists**: Import M3U8 playlists for editing.
- **Modify Items**: Add, remove, or edit entries in the playlist.
- **Remove Low Quality Channels**: Option to filter out channels that contains H265, HD², SD² or SD in their names.
- **Remove Unwanted Groups**: Easily delete groups of channels that are not needed.
- **Change Group Title**: Modify the titles of groups to better organize your playlists.
- **List Channels Info**: Display detailed information about the channels in the playlist.
- **Save Changes**: Export the edited playlist to a new M3U8 file.## Installation
1. Clone this repository:
```bash
git clone https://github.com/RafaelClaumann/m3u8_playlist_editor.git
```2. Navigate to the project directory:
```bash
cd m3u8_playlist_editor
```## Usage
1. Run the main script:
```bash
cd app/
python3 main.py
```2. Select an option: You will see a menu with the following options:
```bash
Choose an option to work with:
1. Channels
2. Movies/Vod
3. Series
-1. Exit
Enter the number of the desired option:
```
## Demonstration### Channels menu
![channels_menu](https://github.com/user-attachments/assets/7866309b-2a1d-40ae-bbeb-6133ad8abd9b)### Movies menu
![movies_menu](https://github.com/user-attachments/assets/5c23e4be-10ac-4602-b859-788c7b783e43)### Series menu
![series_menu](https://github.com/user-attachments/assets/33b89978-150a-4dc0-ace5-9a37b872e0dc)## Playlist Format
This is the file structure that this scripts can parse.
```txt
#EXTINF:0 tvg-name="News 4K" tvg-id="news.com" tvg-logo="channel.png" tvg-group="NEWS" catchup="default" catchup-days="7",News 4K
http://watch.com/news4k#EXTINF:0 tvg-name="News H265" tvg-id="news.com" tvg-logo="news.png" tvg-group="NEWS" catchup="default" catchup-days="7",News H265
http://watch.com/newsh265#EXTINF:0 tvg-name="Sports FHD" tvg-id="" tvg-logo="sports.png" tvg-group="SPORTS",Sports FHD
http://watch.com/sportsfhd#EXTINF:0 tvg-name="Sports HD" tvg-id="" tvg-logo="sports.png" tvg-group="SPORTS",Sports HD
http://watch.com/sportshd
#EXTINF:-1 tvg-name="Movie Title" tvg-logo="movie.png" tvg-group="Movies | Drama",Movie Title
http://watch.com/movie/1231312.mp4#EXTINF:-1 tvg-name="Some Series S01E01" tvg-logo="series.png" tvg-group="Series | provider",Some Series S01E01
http://watch.com/series/S01E01.mp4#EXTINF:-1 tvg-name="Some Series S01E02" tvg-logo="series.png" tvg-group="Series | provider",Some Series S01E02
http://watch.com/series/S01E02.mp4
```