Validate mu3 not m3u8

Various players cannot handle m3u8 files which are the UTF8 variant of an m3u playlist file. For these players you cannot simply rename the file as they often do not properly process UTF8 characters.

The purpose of this action is to test if the current file selection can be placed into an m3u file. If it cannot, a listing is produced describing the faulting file's initial file and re-encoded as Latin-1 file paths.

----- Start of action 'Validate mu3 not m3u8'

'

The purpose of this action is to verify that the file paths associated with the current file selection can be placed in an m3u file as opposed to an m3u8 file.

All file paths which cannot be encoded as Latin-1 will be displayed.

Set named variable 'Results' to ""

Set the Variable 1 and Variable 2 fields to "\!Path to File!"

Re-encode Variable 2 to Force ISO Latin-1

Test if the Variable 1 field is not equal to Variable 2 (Set result and Variable 3)

Run inline action 'Validate File Paths' grouped if Variable 3 is true

Test if named variable 'Results' is empty (Set result)

if true

Prompt

All selected files can be placed in an m3u file. Hide Info Hide Copy

else

Set named variable 'Results' to "The following file path(s) cannot be placed in an m3u file:\n\n\<Results>"

Show the contents of named variable 'Results' in the Log Viewer (monospace)

endif

Start Validate File Paths

Add "Initial: \v1\nLatin-1: \v2\n" to the end of the list in named variable 'Results' delimiter "\n"

----- End of action 'Validate mu3 not m3u8'

Content List:

Actions: Validate m3u not m3u8

Requirements:

Yate v4.2

History:

2015-11-30 First release.

2018-04-03 Updated and rewritten for v4.0.

2018-08-21 Changed to use a Force-Latin-1 encoding as opposed to the lossy encoding.