Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support specifying icecast charset in extended m3u playlist #422

Closed
crocket opened this issue Nov 12, 2018 · 6 comments
Closed

Support specifying icecast charset in extended m3u playlist #422

crocket opened this issue Nov 12, 2018 · 6 comments
Labels

Comments

@crocket
Copy link

crocket commented Nov 12, 2018

Many CJK internet radio stations use non-unicode character set for icy title. Non-unicode characters break MPD clients.

I find it desirable to extend m3u further as follows.

#EXTM3U
#EXTINF:-1 icy-title-charset=shift-jis,FM Apple Wave
http://sdfsdfsdf.com/sdfsdf
#EXTINF:-1 icy-titlecharset=big5,FM Cat
http://fmcat.com/
#EXTINF:-1 icy-title-charset=cp949,FM SDFG
http://sdfg.com/radio
...

EPG programs use similar syntax for extra information.

@MaxKellermann
Copy link
Member

What is this "similar syntax"? Please point me to a specification document.
The syntax you cited above, did you make this up, or is this something some other program is already using? This doesn't look like a good solution, because this limits its use to URLs contained in M3U.

@crocket
Copy link
Author

crocket commented Nov 12, 2018

I don't think there is a specification, but I found

Each station can use a different character encoding for icy title. That's why I thought it was appropriate to assign charset to each station. Different regions use different character encodings for icy title.

Can you think of a better solution?

@crocket
Copy link
Author

crocket commented May 15, 2019

Do you prefer specifying icy title character encodings for playlist streams in database?

@MaxKellermann
Copy link
Member

I don't know what that means, but we could (ab)use the fragment identifier to specify client-side parameters such as charsets (MPD being the client, telling MPD how to interpret the response).
Is there no existing standard for this? How do other players solve this problem?

@crocket
Copy link
Author

crocket commented May 15, 2019

It means saving something like this in database, sticker, or somewhere else.

[Radio.m3u/stream.1.url]
icy-title-charset=shift-jis

[Radio.m3u/stream.2.url]
icy-title-charset=shift-jis

I couldn't find any standard for this. pyradio solved this problem by having its own playlist format that specifies charset.

I think it's just better to start with a minimalistic dog house and upgrade to a proper standard later.
If you chose a minimal solution now, you could ditch it easily later.

Temporary scaffolding is fine as long as you don't make future upgrades difficult. We don't know when standards will emerge. It might take 2 decades.

@crocket
Copy link
Author

crocket commented Nov 3, 2019

Closing this because #charset=xxx solves this issue.

@crocket crocket closed this as completed Nov 3, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants