Hi Bernd,2013/8/11 Bernd Naumann <[email protected]>
>
> Hallo again,
> I have two questions and after two days of googleing I thing I'm going
nuts ;_;
>
> Question #1: How can I achieve that the current track from a playlist is
skiped when I 'switch'/fallback to a live stream?
> Here is my current LS config:
>
> 2 myplaylist = playlist(mode="random", reload=3600,
"/var/lib/mpd/playlists/8bitpeoples.m3u")
> 6 idle_radio = myplaylist
> 11 live = input.http("http://localhost:8000/live.mp3")
> 12
> 13 def to_live(idle_radio, live)
> 14 idle_radio = fade.final(idle_radio)
> 15 live = fade.initial(live)
> 16 add([idle_radio, live])
> 17 end
> 18
> 19 def to_idle_radio(live, idle_radio)
> 22 idle_radio = fade.initial(idle_radio)
> 23 add([live, idle_radio])
> 24 end
> 25
> 27 radio = fallback(track_sensitive=false,
> 28 transitions = [to_live, to_idle_radio], [live,
skip_blank(idle_radio), security])
> 29
> 32 output.icecast(
> 33 %mp3(bitrate=128),
> 34 fallible = true,
> 35 mount = "/mp3_high.mp3",
> 36 host = "localhost", port = 8000, password = "***",
> 37 name = "mp3 high quality", description = "", genre =
"experimental", public = false,
> 38 url = "***:8000/mp3_high.mp3",
> 39 radio)
>
> The smooth fadeout of the current track and fadein to the live source
works pretty well, but when the live source goes off, I start in the middle
of the old playlist track, which is a normal like I've read. I found the
fallback.skip operator but I don't understand how to implement it in my
current config. If I add `source.skip(ilde_radio)` to `def to_idle_radio`
LS skips ALL tracks after going from 'live' back to 'idle_radio' :/
Hmnm... I have no idea why all tracks would be skipped. Here are a couple
of things to consider tho:
* First, I'd suggest calling source.skip during the transition to live as
this may give the playlist a chance to prepare a new track for the next
transition, while skipping a track during a transition may result in audio
glitches and temporary unavailability of the source. I think that is the
reason for the security jingle that you hear.
* Then, as mentioned by Ashworth Payne and as you already seen, the first
source in the add() should be the target source, in order to pass metadata
and track markers of the new source.
Romain
------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with <2% overhead.
Download for free and get started troubleshooting in minutes.
http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk
_______________________________________________
Savonet-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/savonet-users