Skip to main content

m3u iptv to strm files for iptv2vod services

Project description

M3u iptv to strm files for iptv2vod services. My current iptv provider delivers a m3u file with a lot of VOD programs into it also. But i wanted to have a nice way to use it from kodi or jellyfin as normal media.

So i created this program which makes it easy to use vod streams from an iptv provider using a mediaserver/player as kodi / plex / jellyfin / emby and a lot more i think.

Thanks to:

Usage

  • Vod group in m3u_file to directory strm file

    fhs-m3u2strm vod-group-to-dir –m3ufile <path_to_local_file> –group ‘GROUPNAME’’ –output-dir ‘OUTPUT_DIR’

    arguments

    • m3ufile: path to m3ufile

    • group: group to convert to strm files (see list-groups options to show groups in m3ufile)

    • output-dir: directory where to put strm files

    optional arguments

    • rm-end-name: remove this text from end of episodes text

    • rm-in-name: remove this text in the episode and/or serie name

    • rm-regex-name: remove this regex in the episode and/or serie name

    • season-folders: create season folders

    • square-brackets: remove all text within square brackets from episode and/or serie name

  • Listing groups in m3u_file

    fhs-m3u2strm list-groups –m3ufile <path_to_local_file> [–vod-only]

    arguments

    • m3ufile: path to m3ufile

    • vod-only: show only vod from m3ufile

  • Listing groups in m3u_file with details (like movies, channels and episodes)

    fhs-m3u2strm list-groups-details –m3ufile <path_to_local_file> [–vod-only]

    arguments

    • m3ufile: path to m3ufile

    • vod-only: show only vod from m3ufile

  • Multiple vod groups in m3u_file to groups

    fhs-m3u2strm vod-groups-to-dir –yamlconfig sync.yml –m3ufile <path_to_local_file> –base-dir ‘OUTPUT_DIR’

    arguments

    • yaml_config: path to yaml config with groups

    • m3ufile: path to m3ufile

    • base_dir: is used to replace {PATH} in output_dir (see example yaml file)

Example yaml file

For vod-groups-to-dir

---
config:
  season_folders: true
  square_brackets: true
  m3ufile: path to m3ufile   (optional also posible by argument)
  base_dir: base directory   (optional also posible by argument)
  rm_regex_name:             (optional here, for all groups, also rm_in_name and rm_end_name can be used in the config part)
    - " S\\d{2} .*$"
    - " S\\d{2}$"
groups:
  - group: 'GROUP1'
    output_dir: "{PATH}/group1"
    rm_in_name:  "GRP "
    rm_end_name: " STAGE"
    rm_regex_name:           (or here for only one group)
      - " S\\d{2} .*$"
      - " S\\d{2}$"
  - group: 'GROUP2'
    output_dir: "{PATH}/group2"
    rm_in_name:  "EN "

Installation

git clone https://github.com/foxhunt72/fhs-m3u2strm
cd fhs-m3u2strm
pip3 install .

pipx install fhs_m3u2strm
or
pip3 install fhs_m3u2strm

Requirements

  • typer[all]

  • pyyaml

  • rich

Compatibility

Licence

MIT License

Authors

fhs_m3u2strm was written by Richard de Vos.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fhs-m3u2strm-1.0.4.tar.gz (12.2 kB view details)

Uploaded Source

File details

Details for the file fhs-m3u2strm-1.0.4.tar.gz.

File metadata

  • Download URL: fhs-m3u2strm-1.0.4.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for fhs-m3u2strm-1.0.4.tar.gz
Algorithm Hash digest
SHA256 b4bfb1df4c1b48ce2183cd488e58025e611b017dd9a576648874e544ec056102
MD5 33d781650a716066b01329eba70d2c15
BLAKE2b-256 71afbcce498d249927e76e42be1c9aa8cf296e0720636e897cb0e152d39d30e1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page