Hi !
I cannot resolve the following problem :
My server has his locale set to fr-FR.utf8.
I have a simple php script named next_song.php that return a song filename.
----------------------------------------------------------
<?php
header('Content-type: text/html; charset=utf-8');
echo urlencode('/var/lib/mpd/music/01 - Canopée.mp3');
?>
----------------------------------------------------------
My liquidsoap script :
------------------------------------------------------------------------------------------------------
def next_song() =
result = get_process_lines("php -q /var/www/html/services/nextsong.php")
log("liquidsoap php returns #{result}")
result2 = list.hd(result)
log("liquidsoap php list hd returns #{result2}")
result3 = url.decode(result2)
log("liquidsoap returns #{result3}")
request.create(result3)
end
def my_safe(s) =
security = sine()
fallback(track_sensitive=false,[s,security])
end
radio = request.dynamic(next_song)
radio = my_safe(radio)
output.icecast(%vorbis, host = "localhost", port = 8000, icecastsource",
mount = "radio.ogg", radio)
------------------------------------------------------------------------------------------------------
And when i start liquidsoap service i have the following log file :
2017/09/24 11:11:51 >>> LOG START
2017/09/24 11:11:51 [protocols.external:3] Found "/usr/bin/wget".
2017/09/24 11:11:51 [main:3] Liquidsoap 1.1.1
2017/09/24 11:11:51 [main:3] Using: graphics=[distributed with Ocaml]
pcre=7.0.4 dtools=0.3.1 duppy=0.5.1 duppy.syntax=0.5.1 cry=0.2.2 mm=0.2.1
xmlplaylist=0.1.3 lastfm=0.3.0 ogg=0.4.5 vorbis=0.6.1 opus=0.1.0 speex=0.2.0
mad=0.4.4 flac=0.1.1 flac.ogg=0.1.1 dynlink=[distributed with Ocaml] lame=0.3.2
shine=0.2.0 gstreamer=0.2.0 frei0r=0.1.0 voaacenc=0.1.0 theora=0.3.0
schroedinger=0.1.0 gavl=0.1.5 bjack=0.1.4 alsa=0.2.1 ao=0.2.0 samplerate=0.1.2
taglib=0.3.1 magic=0.7.3 camomile=0.8.4 inotify=1.0 faad=0.3.2 soundtouch=0.1.7
portaudio=0.2.0 pulseaudio=0.1.2 ladspa=0.1.4 dssi=0.1.1 sdl=0.9.1
camlimages=4.2.0 lo=0.1.0 yojson=1.2.3 gd=1.0a5
2017/09/24 11:11:51 [dynamic.loader:3] Could not find dynamic module for fdkaac
encoder.
2017/09/24 11:11:51 [dynamic.loader:3] Could not find dynamic module for
aacplus encoder.
2017/09/24 11:11:51 [dynamic.loader:2] Loaded plugin file
/usr/lib/liquidsoap/1.1.1/plugins/pulseaudio.cmxs.
2017/09/24 11:11:51 [dynamic.loader:2] Loaded plugin file
/usr/lib/liquidsoap/1.1.1/plugins/voaacenc.cmxs.
2017/09/24 11:11:51 [dynamic.loader:2] Loaded plugin file
/usr/lib/liquidsoap/1.1.1/plugins/cry.cmxs.
2017/09/24 11:11:51 [dynamic.loader:2] Loaded plugin file
/usr/lib/liquidsoap/1.1.1/plugins/faad.cmxs.
2017/09/24 11:11:51 [dynamic.loader:2] Loaded plugin file
/usr/lib/liquidsoap/1.1.1/plugins/ogg.cmxs.
2017/09/24 11:11:51 [dynamic.loader:2] Loaded plugin file
/usr/lib/liquidsoap/1.1.1/plugins/flac.cmxs.
2017/09/24 11:11:51 [dynamic.loader:2] Loaded plugin file
/usr/lib/liquidsoap/1.1.1/plugins/lame.cmxs.
2017/09/24 11:11:51 [dynamic.loader:2] Loaded plugin file
/usr/lib/liquidsoap/1.1.1/plugins/mad.cmxs.
2017/09/24 11:11:51 [dynamic.loader:2] Loaded plugin file
/usr/lib/liquidsoap/1.1.1/plugins/vorbis.cmxs.
2017/09/24 11:11:51 [dynamic.loader:2] Loaded plugin file
/usr/lib/liquidsoap/1.1.1/plugins/flac_ogg.cmxs.
2017/09/24 11:11:51 [dynamic.loader:2] Loaded plugin file
/usr/lib/liquidsoap/1.1.1/plugins/taglib.cmxs.
2017/09/24 11:11:51 [frame:3] Using 44100Hz audio, 25Hz video, 44100Hz master.
2017/09/24 11:11:51 [frame:3] Frame size must be a multiple of 1764 ticks =
1764 audio samples = 1 video samples.
2017/09/24 11:11:51 [frame:3] Targetting 'frame.duration': 0.04s = 1764 audio
samples = 1764 ticks.
2017/09/24 11:11:51 [frame:3] Frames last 0.04s = 1764 audio samples = 1 video
samples = 1764 ticks.
2017/09/24 11:11:51 [lang:3] liquidsoap starting
2017/09/24 11:11:51 [video.converter:4] Couldn't find preferred video
converter: gavl.
2017/09/24 11:11:51 [audio.converter:4] Couldn't find preferred samplerate
converter: libsamplerate.
2017/09/24 11:11:51 [audio.converter:4] Using native samplerate converter
2017/09/24 11:11:51 [threads:3] Created thread "generic queue #1".
2017/09/24 11:11:51 [threads:3] Created thread "generic queue #2".
2017/09/24 11:11:51 [threads:3] Created thread "non-blocking queue #1".
2017/09/24 11:11:51 [threads:3] Created thread "non-blocking queue #2".
2017/09/24 11:11:51 [clock:4] Currently 1 clocks allocated.
2017/09/24 11:11:51 [clock.wallclock_main:4] Starting 1 sources...
2017/09/24 11:11:51 [source:4] Source output.icecast_4991 gets up.
2017/09/24 11:11:51 [source:4] Source fallback_4988 gets up.
2017/09/24 11:11:51 [source:4] Source on_metadata_4983 gets up.
2017/09/24 11:11:51 [on_metadata_4983:4] Content kind is
{audio=2;video=0;midi=0}.
2017/09/24 11:11:51 [source:4] Source request.dynamic_4981 gets up.
2017/09/24 11:11:51 [request.dynamic_4981:4] Content kind is
{audio=2;video=0;midi=0}.
2017/09/24 11:11:51 [request.dynamic_4981:4] Activations changed:
static=[on_metadata_4983:fallback_4988:radio(dot)ogg:radio(dot)ogg], dynamic=[].
2017/09/24 11:11:51 [on_metadata_4983:4] Activations changed: static=[],
dynamic=[fallback_4988:radio(dot)ogg:radio(dot)ogg].
2017/09/24 11:11:51 [source:4] Source sine_4987 gets up.
2017/09/24 11:11:51 [sine_4987:4] Content kind is {audio=2;video=0;midi=0}.
2017/09/24 11:11:51 [sine_4987:4] Activations changed: static=[],
dynamic=[fallback_4988:radio(dot)ogg:radio(dot)ogg].
2017/09/24 11:11:51 [fallback_4988:4] Activations changed:
static=[radio(dot)ogg:radio(dot)ogg], dynamic=[].
2017/09/24 11:11:51 [radio(dot)ogg:4] Activations changed:
static=[radio(dot)ogg], dynamic=[].
2017/09/24 11:11:51 [radio(dot)ogg:4] Enabling caching mode: active source.
2017/09/24 11:11:51 [radio(dot)ogg:3] Connecting mount radio.ogg for
source@localhost...
2017/09/24 11:11:51 [radio(dot)ogg:3] Connection setup was successful.
2017/09/24 11:11:51 [threads:3] Created thread "wallclock_main" (1 total).
2017/09/24 11:11:51 [clock.wallclock_main:3] Streaming loop starts,
synchronized with wallclock.
2017/09/24 11:11:51 [clock:4] Main phase starts.
2017/09/24 11:11:51 [lang:3] liquidsoap php returns
["%2Fvar%2Flib%2Fmpd%2Fmusic%2F01+-+Canop%C3%A9e.mp3 "]
2017/09/24 11:11:51 [lang:3] liquidsoap php list hd returns
%2Fvar%2Flib%2Fmpd%2Fmusic%2F01+-+Canop%C3%A9e.mp3
2017/09/24 11:11:51 [lang:3] liquidsoap returns /var/lib/mpd/music/01 -
Canopée.mp3
2017/09/24 11:11:51 [request:3] Nonexistent file or ill-formed URI
"/var/lib/mpd/music/01 - Canop\195\169e.mp3 "!
2017/09/24 11:11:51 [lang:3] liquidsoap php returns
["%2Fvar%2Flib%2Fmpd%2Fmusic%2F01+-+Canop%C3%A9e.mp3 "]
2017/09/24 11:11:51 [lang:3] liquidsoap php list hd returns
%2Fvar%2Flib%2Fmpd%2Fmusic%2F01+-+Canop%C3%A9e.mp3
2017/09/24 11:11:51 [lang:3] liquidsoap returns /var/lib/mpd/music/01 -
Canopée.mp3
2017/09/24 11:11:51 [request:3] Nonexistent file or ill-formed URI
"/var/lib/mpd/music/01 - Canop\195\169e.mp3 "!
2017/09/24 11:11:51 [fallback_4988:3] Switch to sine_4987.
2017/09/24 11:11:51 [sine_4987:4] Activations changed:
static=[fallback_4988:radio(dot)ogg:radio(dot)ogg],
dynamic=[fallback_4988:radio(dot)ogg:radio(dot)ogg].
2017/09/24 11:11:51 [ogg.muxer:4] radio(dot)ogg: Starting all streams
2017/09/24 11:11:51 [lang:3] liquidsoap php returns
["%2Fvar%2Flib%2Fmpd%2Fmusic%2F01+-+Canop%C3%A9e.mp3 "]
2017/09/24 11:11:51 [lang:3] liquidsoap php list hd returns
%2Fvar%2Flib%2Fmpd%2Fmusic%2F01+-+Canop%C3%A9e.mp3
2017/09/24 11:11:51 [lang:3] liquidsoap returns /var/lib/mpd/music/01 -
Canopée.mp3
2017/09/24 11:11:51 [request:3] Nonexistent file or ill-formed URI
"/var/lib/mpd/music/01 - Canop\195\169e.mp3 "!
How can i read song file with special characters ?
Thanks
Chris
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Savonet-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/savonet-users