Search packages, repositories and app categories

Package detailsv1.0.3

m3u

Simple Dart tool to parse M3U and M3U_Plus files from a string or document string.

30-day downloads
24
Likes
12
Pub points
35

Install package

flutter pub add m3u

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

The m3u package is a lightweight Dart utility designed to parse M3U and M3U_Plus playlist files from strings or document inputs. It enables developers to easily extract metadata and media URLs from standard M3U formats, supporting both basic and extended playlist structures. Ideal for applications handling audio or video streaming playlists, it provides straightforward parsing without external dependencies. The tool is particularly useful in multimedia apps requiring dynamic playlist management.

Use cases

  • Parsing live stream playlists
  • Extracting media URLs from M3U files
  • Building media player applications
  • Handling IPTV channel lists
  • Converting playlist data for display
  • Supporting offline playlist storage

Key features

  • Simple string-based parsing
  • Supports M3U and M3U_Plus formats
  • No external dependencies
  • Lightweight and fast
  • Handles metadata tags
  • Returns structured playlist data

Suitable for

  • Media player apps
  • IPTV clients
  • Streaming service integrations
  • Playlist import/export tools
  • Dart-based multimedia utilities

Considerations

  • Does not support file I/O directly
  • Limited to text input parsing
  • No validation of playlist integrity
  • Not designed for large-scale playlist processing
  • No built-in error recovery for malformed files

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

M3U format parser

Simple parser for M3U and M3U_Plus files.

How to use

Currently the parser only supports full file parsing.

import 'package:m3u/m3u.dart';

main() async {
  String playlistContent = <load_playlist>;
  final playlist = await M3uParser.parse(file);
  
  // Organized categories
  final categories =
      sortedCategories(entries: listOfTracks, attributeName: 'group-title');
  print(categories);
}

Missing features

  • [ ] Parse from a stream of data instead of a string
  • [ ] Parse info from the header
  • [ ] Parse start track info
  • [ ] Parse non string information ex: aspect-ratio=4:3

Categories

Dependencies

Dependency list 1 items

Source repository

Projects using this package

No data available yet.