m3u playlist parsing

See original GitHub issue

I’ve noticed when i create an m3u8 playlist, Syncplay doesn’t parse metadata in the list. Not a huge deal, but it can make things more readable when your username and passwords that are in those links are 128 character randomly generated strings lol

Example.m3u8:

#EXTM3U
#EXTINF:123, Movie1
https://username:password@domain.com/Movies/some_movie.mp4
#EXTINF:123, Movie2
https://username:password@domain.com/Movies/some_other_movie.mp4

VLC media player will display the names of the movies as “Movie1” and “Movie2” that are 2 minutes and 3 seconds long (123 seconds) rather than the URL, if i open it directly. However syncplay does this: image

It’s treating the comments/metadata in the file as though it’s a movie to play, rather than the title info & other metadata.

So, i have some suggestions. Either: A: Make the playlist a “DataGridView Control” or at least that’s what it’s called in winforms, though i see you’re using qt, so whatever the equivalent is in there. Add columns for Artist, Album, Title, Track number, URL, Duration, etc. Have it populate that list from the metadata/URLs.

B: Make it ignore empty lines and metadata. It’ll still pull the links through though and it’ll work. It just won’t be purdy.

I’m willing to put in a herculian effort to add this myself someday, but i have a lot on my plate right now, and probably will for a while. Any questions on implementation, I’m happy to answer though.

There’s some documentation here on the subject: https://docs.fileformat.com/audio/m3u/

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Comments:6 (4 by maintainers)

github_iconTop GitHub Comments

1reaction
JordanPlayz158commented, Feb 25, 2022
  1. True, although not sure how many clients officially supported by SyncPlay don’t have M3U/8 support
  2. Yeah, that’s what I meant (and used your wording from the previous comment)
  3. Oh alright, might be a good feature though as most players should support it if they support M3U/8. I could attempt to add playlist from website support unless this is not a feature or vision you wish to be in SyncPlay
1reaction
Et0hcommented, Apr 9, 2021

Okay, the more I look into the details of the .m3u format the more I want Syncplay to simply support txt files with one filename/character per line. Issue include handling filenames starting with a # and handling items using special characters. I’m now in favour of just changing the default file format for loading/saving playlists to .txt and making it clear in our documentation that Syncplay does not provide full m3u support.

Read more comments on GitHub >

github_iconTop Results From Across the Web

iptv-playlist-parser - npm
A basic IPTV playlist parser. Latest version: 0.12.2, last published: a month ago. Start using iptv-playlist-parser in your project by ...
Read more >
m3u-parser · GitHub Topics
Exclude unwanted channels based on group and generate a new M3U file with proxied streams and attributes. Streams get proxied through a webserver...
Read more >
m3u-parser - PyPI
A parser for m3u files. It parses the contents of m3u file to a list of streams information which can be saved as...
Read more >
M3u - npm.io
M3u Packages ; m3u8-file-parser. A m3u8 file parser built against RFC8216. m3um3u8 ; iptv-playlist-parser. A basic IPTV playlist parser. iptvplaylistparserm3um3u8.
Read more >
Extended M3U playlist parser - metacpan.org
Takes a m3u playlist as a string and returns a list, with each element is a hashref with the keys type and value....
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found