Difference between revisions of "M3U/PLS Files"

From MSX - Wiki
Jump to navigation Jump to search
 
(36 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
It is possible to convert M3U/PLS files to JSON files (i.e. Media Station X content pages) with following URLs.
 
It is possible to convert M3U/PLS files to JSON files (i.e. Media Station X content pages) with following URLs.
  
* M3U: <code>http://msx.benzac.de/services/m3u.php?headline={HEADLINE}&background={BACKGROUND}&type={TYPE}&url={URL}</code>
+
* M3U: <code>http://msx.benzac.de/services/m3u.php?headline={HEADLINE}&background={BACKGROUND}&type={TYPE}&mode={MODE}&url={URL}</code>
* PLS: <code>http://msx.benzac.de/services/pls.php?headline={HEADLINE}&background={BACKGROUND}&type={TYPE}&url={URL}</code>
+
* PLS: <code>http://msx.benzac.de/services/pls.php?headline={HEADLINE}&background={BACKGROUND}&type={TYPE}&mode={MODE}&url={URL}</code>
  
'''Note: For HTTP Live Streaming (HLS) files (i.e. M3U8 files), please use the video/audio action (e.g. <code>video:http://link.to.hls.m3u8</code>), because these URLs are only suitable for converting simple playlist files. Please note that this is an online service. Therefore, only publicly available playlist files can be converted. Generally, it is more recommended to host JSON files instead of converting playlist files as they provide much more functionality.'''
+
There is also a launcher service that allows you to launch the Media Station X application directly with an M3U playlist: https://msx.benzac.de/info/m3u.html.
 +
 
 +
'''Note: For HTTP Live Streaming (HLS) files (i.e. M3U8 files), please use the video/audio action (e.g. <code>video:http://link.to.hls.m3u8</code>), because these URLs are only suitable for converting simple playlist files. Please note that this is an online service. Therefore, only publicly available playlist files can be converted. Please also note that no URLs or playlist files are stored persistently on MSX servers. There is only a session-based storage for performance reasons. Please also note that for performance and storage reasons, only files up to 25 MB are permitted (larger files will be truncated). For the favorites function, a cookie-based storage is used. The cookie (and the associated favorites) will be deleted after one year of non-usage.'''
  
 
== Syntax ==
 
== Syntax ==
Line 25: Line 27:
 
* <code>"image"</code>: Image items.
 
* <code>"image"</code>: Image items.
 
* <code>"plugin"</code>: Plugin items. This is a special type that allows you to create playlists with plugin items. For this type, version '''0.1.40''' or higher is needed. The playlist items must be indicated in the syntax <code>{PLATFORM}:{ID}</code>. The <code>{PLATFORM}</code> part must be replaced with the video/audio hosting platform name (i.e. <code>youtube</code>, <code>vimeo</code>, <code>dailymotion</code>, <code>twitch</code>, <code>facebook</code>, <code>wistia</code>, or <code>soundcloud</code>). The <code>{ID}</code> part must be replaced with the corresponding platform content ID (e.g. the YouTube video ID). Please see [[YouTube, Vimeo & Co.]] for more information about the plugin feature.
 
* <code>"plugin"</code>: Plugin items. This is a special type that allows you to create playlists with plugin items. For this type, version '''0.1.40''' or higher is needed. The playlist items must be indicated in the syntax <code>{PLATFORM}:{ID}</code>. The <code>{PLATFORM}</code> part must be replaced with the video/audio hosting platform name (i.e. <code>youtube</code>, <code>vimeo</code>, <code>dailymotion</code>, <code>twitch</code>, <code>facebook</code>, <code>wistia</code>, or <code>soundcloud</code>). The <code>{ID}</code> part must be replaced with the corresponding platform content ID (e.g. the YouTube video ID). Please see [[YouTube, Vimeo & Co.]] for more information about the plugin feature.
 +
|-
 +
| <code>mode</code> || <code>string</code> || <code>"default"</code> || No || data-sort-value=30|'''0.1.30''' ||
 +
The mode of the content page.
 +
 +
* <code>"default"</code>: Default mode.
 +
* <code>"extended"</code>: Extended mode. This mode adds features like view selection, order selection, category selection, playlist options, resume functions, and more. It uses HTTP sessions and cookies and therefore needs the <code>user:</code> prefix for loading. For this mode, version '''0.1.145''' or higher is needed.
 +
|-
 +
| <code>context</code> || <code>string</code> || <code>"default"</code> || No || data-sort-value=30|'''0.1.30''' ||
 +
The context of the content page. This parameter is used internally, but can also be used to load a specific context.
 +
 +
* <code>"default"</code>: Default context.
 +
* <code>"favorites"</code>: Favorites context. If this context is set, the favorites are loaded. The <code>mode</code> parameter will be automatically set to <code>"extended"</code>, because it is required for this context. Therefore, it also needs the <code>user:</code> prefix for loading and can only be used with version '''0.1.145''' or higher.
 +
 +
'''Note: Currently, this parameter is only valid for M3U files.'''
 
|-
 
|-
 
| <code>url</code> || <code>string</code> || <code>null</code> || '''Yes''' || data-sort-value=30|'''0.1.30''' ||
 
| <code>url</code> || <code>string</code> || <code>null</code> || '''Yes''' || data-sort-value=30|'''0.1.30''' ||
Line 32: Line 48:
 
== Example ==
 
== Example ==
 
=== Screenshot ===
 
=== Screenshot ===
[[File:playlist.png|thumb|640px|none|Example Screenshot (M3U/PLS Files)]]
+
[[File:playlist.png|thumb|640px|none|Example Screenshot (Playlist Examples)]]
  
 
=== Code ===
 
=== Code ===
Line 39: Line 55:
 
     "headline": "Playlist Examples",
 
     "headline": "Playlist Examples",
 
     "menu": [{
 
     "menu": [{
             "label": "Playlist Data",
+
            "type": "separator",
             "data": "http://msx.benzac.de/services/m3u.php?url=http://msx.benzac.de/info/data/m3u/audios.m3u"
+
             "label": "Playlist Data"
 +
        }, {
 +
            "icon": "movie",
 +
            "label": "Videos",
 +
            "extensionLabel": "Default",
 +
             "data": "http://msx.benzac.de/services/m3u.php?type=video&url=http://msx.benzac.de/info/data/m3u/videos.m3u"
 +
        }, {
 +
            "icon": "movie",
 +
            "label": "Videos",
 +
            "extensionLabel": "Extended",
 +
            "data": "user:http://msx.benzac.de/services/m3u.php?type=video&mode=extended&url=http://msx.benzac.de/info/data/m3u/videos.m3u"
 +
        }, {
 +
            "icon": "music-note",
 +
            "label": "Audios",
 +
            "extensionLabel": "Default",
 +
            "data": "http://msx.benzac.de/services/m3u.php?type=audio&url=http://msx.benzac.de/info/data/m3u/audios.m3u"
 +
        }, {
 +
            "icon": "music-note",
 +
            "label": "Audios",
 +
            "extensionLabel": "Extended",
 +
            "data": "user:http://msx.benzac.de/services/m3u.php?type=audio&mode=extended&url=http://msx.benzac.de/info/data/m3u/audios.m3u"
 +
        }, {
 +
            "type": "separator"
 
         }, {             
 
         }, {             
 
             "label": "Playlist Actions",
 
             "label": "Playlist Actions",

Latest revision as of 16:38, 21 November 2023

It is possible to convert M3U/PLS files to JSON files (i.e. Media Station X content pages) with following URLs.

There is also a launcher service that allows you to launch the Media Station X application directly with an M3U playlist: https://msx.benzac.de/info/m3u.html.

Note: For HTTP Live Streaming (HLS) files (i.e. M3U8 files), please use the video/audio action (e.g. video:http://link.to.hls.m3u8), because these URLs are only suitable for converting simple playlist files. Please note that this is an online service. Therefore, only publicly available playlist files can be converted. Please also note that no URLs or playlist files are stored persistently on MSX servers. There is only a session-based storage for performance reasons. Please also note that for performance and storage reasons, only files up to 25 MB are permitted (larger files will be truncated). For the favorites function, a cookie-based storage is used. The cookie (and the associated favorites) will be deleted after one year of non-usage.

Syntax[edit]

Parameter syntax of playlist converter
Parameter Type Default Value Mandatory Since Version Description
headline string "Playlist" No 0.1.30

The headline of the content page. It is recommended to encode the value to ensure that it is evaluated correctly (e.g. "My Playlist""My%20Playlist").

background string null No 0.1.30

The background image of the content page. It is recommended to encode the value to ensure that it is evaluated correctly (e.g. "http://msx.benzac.de/img/bg1.jpg""http%3A%2F%2Fmsx.benzac.de%2Fimg%2Fbg1.jpg").

type string "audio" No 0.1.30

The type of the content page items.

  • "video": Video items.
  • "audio": Audio items.
  • "image": Image items.
  • "plugin": Plugin items. This is a special type that allows you to create playlists with plugin items. For this type, version 0.1.40 or higher is needed. The playlist items must be indicated in the syntax {PLATFORM}:{ID}. The {PLATFORM} part must be replaced with the video/audio hosting platform name (i.e. youtube, vimeo, dailymotion, twitch, facebook, wistia, or soundcloud). The {ID} part must be replaced with the corresponding platform content ID (e.g. the YouTube video ID). Please see YouTube, Vimeo & Co. for more information about the plugin feature.
mode string "default" No 0.1.30

The mode of the content page.

  • "default": Default mode.
  • "extended": Extended mode. This mode adds features like view selection, order selection, category selection, playlist options, resume functions, and more. It uses HTTP sessions and cookies and therefore needs the user: prefix for loading. For this mode, version 0.1.145 or higher is needed.
context string "default" No 0.1.30

The context of the content page. This parameter is used internally, but can also be used to load a specific context.

  • "default": Default context.
  • "favorites": Favorites context. If this context is set, the favorites are loaded. The mode parameter will be automatically set to "extended", because it is required for this context. Therefore, it also needs the user: prefix for loading and can only be used with version 0.1.145 or higher.

Note: Currently, this parameter is only valid for M3U files.

url string null Yes 0.1.30

The URL of the M3U/PLS file. It is recommended to encode the value to ensure that it is evaluated correctly (e.g. "http://msx.benzac.de/info/data/m3u/audios.m3u""http%3A%2F%2Fmsx.benzac.de%2Finfo%2Fdata%2Fm3u%2Faudios.m3u").

Example[edit]

Screenshot[edit]

Example Screenshot (Playlist Examples)

Code[edit]

{
    "headline": "Playlist Examples",
    "menu": [{
            "type": "separator",
            "label": "Playlist Data"
        }, {
            "icon": "movie",
            "label": "Videos",
            "extensionLabel": "Default",
            "data": "http://msx.benzac.de/services/m3u.php?type=video&url=http://msx.benzac.de/info/data/m3u/videos.m3u"
        }, {
            "icon": "movie",
            "label": "Videos",
            "extensionLabel": "Extended",
            "data": "user:http://msx.benzac.de/services/m3u.php?type=video&mode=extended&url=http://msx.benzac.de/info/data/m3u/videos.m3u"
        }, {
            "icon": "music-note",
            "label": "Audios",
            "extensionLabel": "Default",
            "data": "http://msx.benzac.de/services/m3u.php?type=audio&url=http://msx.benzac.de/info/data/m3u/audios.m3u"
        }, {
            "icon": "music-note",
            "label": "Audios",
            "extensionLabel": "Extended",
            "data": "user:http://msx.benzac.de/services/m3u.php?type=audio&mode=extended&url=http://msx.benzac.de/info/data/m3u/audios.m3u"
        }, {
            "type": "separator"
        }, {            
            "label": "Playlist Actions",
            "data": {  
                "template": {
                    "type": "control",
                    "layout": "0,0,12,1",
                    "color": "msx-glass"
                },
                "items": [{
                        "icon": "msx-white-soft:movie",
                        "label": "Show video playlist",
                        "action": "content:http://msx.benzac.de/services/m3u.php?type=video&url=http://msx.benzac.de/info/data/m3u/videos.m3u"
                    }, {     
                        "icon": "msx-white-soft:movie",
                        "label": "Start video playlist",
                        "action": "playlist:http://msx.benzac.de/services/m3u.php?type=video&url=http://msx.benzac.de/info/data/m3u/videos.m3u"
                    }, {
                        "icon": "msx-white-soft:music-note",
                        "label": "Show audio playlist",
                        "action": "content:http://msx.benzac.de/services/m3u.php?type=audio&url=http://msx.benzac.de/info/data/m3u/audios.m3u"
                    }, {     
                        "icon": "msx-white-soft:music-note",
                        "label": "Start audio playlist",
                        "action": "playlist:http://msx.benzac.de/services/m3u.php?type=audio&url=http://msx.benzac.de/info/data/m3u/audios.m3u"
                    }, {     
                        "icon": "msx-white-soft:image",
                        "label": "Show slideshow",
                        "action": "content:http://msx.benzac.de/services/m3u.php?type=image&url=http://msx.benzac.de/info/data/m3u/images.m3u"
                    }, {    
                        "icon": "msx-white-soft:image",
                        "label": "Start slideshow",
                        "action": "slideshow:http://msx.benzac.de/services/m3u.php?type=image&url=http://msx.benzac.de/info/data/m3u/images.m3u"
                    }]
            }
        }]
}

Demo[edit]