Hi, it worked with that test script, but now I tried it in my real radio script 
and its not working. 
The main differences are that the input is jackd application and the output 
formats are .opus and .mp3. The .liq script works ok but no metadata is shown 
when playing the stream. 

Script I'm running:

set("log.stdout",true)
set("log.file.append",true)
set("log.level", 4)
set("log.file.path","/home/radiola/liquidsoap.log")
set("frame.audio.samplerate",48000)


#Update Title function
def append_title(m) = 
newtitle = list.hd(
  get_process_lines(
    "sudo mysql mydatabase -u root -phackme -se \"SELECT CAST(CONVERT(Title 
USING utf8) AS binary) FROM mytable WHERE id='1'\""
  )
)
[("title","#{newtitle}")]
end


#Update artist function
def append_artist(m) =
newartist = list.hd(
  get_process_lines(
    "sudo mysql mydatabase -u root -phackme -se \"SELECT CAST(CONVERT(Artist 
USING utf8) AS binary) FROM mytable WHERE id='1'\""
  )
)
[("artist","#{newartist}")]
end


#Source stream comes from jackd
s = input.jack()


#Insert metadata on stream:
s = map_metadata(append_title, s)
s = map_metadata(append_artist, s)


output.icecast(%opus(                    
                                         vbr="constrained",
                                         complexity=10,
                                         max_bandwidth="full_band",
                                         samplerate=48000,
                                         bitrate=128,
                                         channels=2,
                                        ),
                                host="localhost",
                                port=8000,
                                password="hackme",
                                mount="aovivo.opus",
                                s                     
                                )
                                                
                                                
output.icecast(%mp3.cbr(
                                        bitrate=128,
                                        samplerate=48000
                                        ),
                                host="localhost",
                                port=8000,
                                password="hackme",
                                mount="aovivo.mp3",
                                s
)


The log file is as follows:

2018/07/19 15:36:15 [frame:3] Using 48000Hz audio, 25Hz video, 48000Hz master.
2018/07/19 15:36:15 [frame:3] Frame size must be a multiple of 1920 ticks = 
1920 audio samples = 1 video samples.
2018/07/19 15:36:15 [frame:3] Targetting 'frame.duration': 0.04s = 1920 audio 
samples = 1920 ticks.
2018/07/19 15:36:15 [frame:3] Frames last 0.04s = 1920 audio samples = 1 video 
samples = 1920 ticks.
2018/07/19 15:36:15 [video.converter:4] Couldn't find preferred video 
converter: gavl.
2018/07/19 15:36:15 [audio.converter:4] Using preferred samplerate converter: 
libsamplerate.
2018/07/19 15:36:15 [threads:3] Created thread "generic queue #1".
2018/07/19 15:36:15 [threads:3] Created thread "generic queue #2".
2018/07/19 15:36:15 [threads:3] Thread "generic queue #2" terminated.
2018/07/19 15:36:15 [threads:3] Thread "generic queue #1" terminated.
2018/07/19 15:36:15 [clock:4] Currently 1 clocks allocated.
2018/07/19 15:36:15 [clock.wallclock_bjack:4] Starting 3 sources...
2018/07/19 15:36:15 [source:4] Source input.jack_5625 gets up.
2018/07/19 15:36:15 [input.jack_5625:4] Content kind is 
{audio=2;video=0;midi=0}.
2018/07/19 15:36:15 [clock.wallclock_bjack:4] Delegating clock to active 
sources.
2018/07/19 15:36:15 [input.jack_5625:4] Activations changed: 
static=[input.jack_5625], dynamic=[].
2018/07/19 15:36:15 [input.jack_5625:4] Enabling caching mode: active source.
2018/07/19 15:36:15 [source:4] Source output.icecast_5634 gets up.
2018/07/19 15:36:15 [source:4] Source map_metadata_5632 gets up.
2018/07/19 15:36:15 [map_metadata_5632:4] Content kind is 
{audio=2;video=0;midi=0}.
2018/07/19 15:36:15 [source:4] Source map_metadata_5630 gets up.
2018/07/19 15:36:15 [map_metadata_5630:4] Content kind is 
{audio=2;video=0;midi=0}.
2018/07/19 15:36:15 [input.jack_5625:4] Activations changed: 
static=[map_metadata_5630:map_metadata_5632:aovivo(dot)opus:aovivo(dot)opus, 
input.jack_5625], dynamic=[].
2018/07/19 15:36:15 [map_metadata_5630:4] Activations changed: 
static=[map_metadata_5632:aovivo(dot)opus:aovivo(dot)opus], dynamic=[].
2018/07/19 15:36:15 [map_metadata_5632:4] Activations changed: 
static=[aovivo(dot)opus:aovivo(dot)opus], dynamic=[].
2018/07/19 15:36:15 [aovivo(dot)opus:4] Activations changed: 
static=[aovivo(dot)opus], dynamic=[].
2018/07/19 15:36:15 [aovivo(dot)opus:4] Enabling caching mode: active source.
2018/07/19 15:36:15 [source:4] Source output.icecast_5635 gets up.
2018/07/19 15:36:15 [map_metadata_5632:4] Activations changed: 
static=[aovivo(dot)mp3:aovivo(dot)mp3, aovivo(dot)opus:aovivo(dot)opus], 
dynamic=[].
2018/07/19 15:36:15 [map_metadata_5632:4] Enabling caching mode: two static 
activations.
2018/07/19 15:36:15 [aovivo(dot)mp3:4] Activations changed: 
static=[aovivo(dot)mp3], dynamic=[].
2018/07/19 15:36:15 [aovivo(dot)mp3:4] Enabling caching mode: active source.
2018/07/19 15:36:15 [threads:3] Created thread "input.jack_5625" (1 total).
2018/07/19 15:36:15 [aovivo(dot)opus:3] Connecting mount aovivo.opus for 
sou...@xxx.xxx.xxx.xxx...
2018/07/19 15:36:15 [aovivo(dot)opus:3] Connection setup was successful.
2018/07/19 15:36:15 [aovivo(dot)mp3:3] Connecting mount aovivo.mp3 for 
sou...@xxx.xxx.xxx.xxx...
2018/07/19 15:36:15 [aovivo(dot)mp3:3] Connection setup was successful.
2018/07/19 15:36:15 [threads:3] Created thread "wallclock_bjack" (2 total).
2018/07/19 15:36:15 [clock.wallclock_bjack:3] Streaming loop starts, 
synchronized by active sources.
2018/07/19 15:36:15 [clock:4] Main phase starts.
2018/07/19 15:36:15 [map_metadata_5630:3] Inserting missing metadata.
2018/07/19 15:36:15 [ogg.muxer:4] aovivo(dot)opus: Starting all streams


Would an input from jackd trigger the function that updates metadata at all? 
And do opus and mp3 support this way of inserting metadata?

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/savonet/liquidsoap/issues/570#issuecomment-406375338
------------------------------------------------------------------------------
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
Savonet-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/savonet-users

Reply via email to