[Requests] Live Mic Input & Pause/Play
  • Hey all,

    I love Airtime and have been following its development for about 6 months, there are however two features that i can see needed for me to actually make it the perfect web based DJ software

    Live mic input is needed, there are already available scripts in HTML5/Javascript that capture and process live Microphone input from a clients computer
    they need only be implemented into the GUI for DJ's to talk live on their shows

    The second thing needed is the ability to Play/Pause/seek tracks, this would be handy on various occasions and this is a very common feature im suprised did not exist in airtime.

    My radio station will be purely web based and DJ's will be logging onto airtime remotely to play their shows and i can see these two features will be greatly needed for them to have it function properly like any other DJ software would.
  • 19 Comments sorted by
  • I agree Serpentxx... I was amazed at how well written and layed out this software is, but I am a tad bit confused as to what the reasoning was NOT to include these simple functions.  Every radio station I have ever listened to in my life has the ability to break what's playing, announce something, and then start playing again... seems that Radio 101 was just skipped all together.
    Post edited by Matt Elsberry at 2013-09-21 13:39:30
  • look at my script ,I did a minimal modification  continuing with the existing playback and if you can test it,
    I will send it to Lisa for us to look at incorporating in Airtime

    I was not familiar with Python so within my busy schedule I took the time to learn it so I have a more user friendly script.


    This allows you to use your mixer as a Live input  and use the output of Airtime to pass it through the mixer.

    http://forum.sourcefabric.org/discussion/15904/input-mic-and-mixer-using-alsa-something-that-will-work-using-airtime-script-modified

    "what the reasoning was NOT to include these simple functions.  Every radio station I have ever listened to in my life"

    Most People Lose sight that airtime development was done on the basis you use it in a remote server (VPS,Hosting,Cloud,etc) and not as a desktop/workstation/client.

    Airtime have blossom in a Radio Autiomation Software to its scope and I know developers are hard at work to make it the Ultimate software you turn to

    Best of luck and helps us to further the objective

    V.O.I.S.S.E.S
    Can You Hear me now
    Post edited by Voisses Tech at 2013-09-23 14:02:54
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • While we are quoting ... allow me to add a quote, from the front page of Airtime:
    "Airtime lets you take total control of your radio station via the web with intelligent archive management"

    I apologize if I "Lost sight".. I was distracted by the claim of having "total control".

    Don't get me wrong... Airtime seems to be a very well put together piece of work, I just think that the basics have been overlooked.
    I am trying to help two radio personalities establish an online radio station.  It is frustrating when they choose some crappy Windows application over Airtime, simply because they cannot have a pause break between songs and cannot easily make a playlist with staggering jingles/commercials/sweeps.

    It's like buying a car and being told that it drives great, does this and that... however it only travels in a straight line, it was never engineered to make turns.

    Please keep in mind the basics... for without those, all of the other great function are null.

  • I do not use windows

    if the Hardware do crash the software does.I love linux for its ability to customise the way I want it

    Not everybody is a computer person like myself  but I do code a number of things to deals with most of the problem you suggest and post them here in this forum

    Airtime suggest you integrate with two other software most people miss that integration

    MIXXX for DJ
    ICDJ for Desktop/Workstation

    look here http://www.sourcefabric.org/en/airtime/features/

    ICDJ carries Jingles and a lot of the other features you mention even Skype.

    Have a look at it and you see that it carries most of the features you mention

    I am glad to see some of the Software like Sams now have web and remote features but for me,Airtime is way ahead

    For My local server

    I install
    Mythbuntu
    Airtime
    Media storage (Plex)

    So its my media server in all sense what windows software can overcome that?

    Not being facetious but I am old school,The full sentence is

    Airtime lets you take total control of your radio station via the web with intelligent archive management
    Taking out all the prepositions  and wasted words we end up with to have the right concept

    "Airtime total control radio station web intelligent archive management"

    This sound like an existing station with added feature for the web and more like and integrated web software


    Post edited by Voisses Tech at 2013-09-23 19:13:59
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • Thanks for the comments guys, and thanks for the script Voisses Tech, i will play with it this weekend

    I did miss that "Integration" part and i am sure im not the only one, but the reality is, the more programs you attach to the pipeline of running your station the more complicated it will become for DJ's and the less stable it will be to run and maintain.

    Airtime runs great on its own as it is, it just needs a few minor features for it to truly be a functional replacement for most DJ automation software.

    As for Client Microphone input, i would love to see a simple button where DJ's can click somewhere in their playlist, record their voice and it will upload it to play in that section, i am not sure how to implement such a thing but for anyone interested in playing with the idea i have found these two libraries
  • "the more programs you attach to the pipeline of running your station the more complicated it will become for DJ's and the less stable it will be to run and maintain."

    Somewhat true

    Remember you have the admin,the program manager,dj,guess etc. whose role and functions are different.

    • The Admin  might concern with overall functions and statistics,live Assist,etc
    • The Programm manager the schedule,live Assist etc
    • The Guess browsing etc.
    • The Dj mixing of songs etc

    The Dj will more concern with play/pause function and a program like Virtual Dj,Mixx or other variants will be there concern.So the dj is the least of All of the problem
    They definitely need a separate pipeline

    The Previous way is that stations would set up relays/mounts through Icecast/shoutcast servers and then pipe the dj through these. I will not list the problems with this scenario,but one of the key problem with this is that the DJ's got full controls of the stream outputs and you need a different machine to recieve that stream to put to the transmitter.


    Airtime Overcome that through Master/Show Features.

     
    Where the problem lies was how to use say a broadcast desk in house at the station?

    Scenario

    So here is how I do it.

    I was on the road and my schedule show at 2300 was about to start when my encoder (butt) would not connect.
    I immediately open a browser load some songs in Now Playing.note I always put a blank show in the calendar for 2300 to 0600 the next day.

    I then thought what if I was at my desk and wants to do my show and the encoder stop working.
    so I coded the Inputs but I also promised @hoerich that I would  post a solution,but at the time I was having overuns and underuns in alsa and wanted to finds a solution before I posted the code


    The folks at liquidsoap team will tell you that there are stations using liquidsoap in excess of 3years without ever rebooting and I can attest to having a server with more than a year without reboots. I am now scared to even upgrade(just kidding I will upgrade this weekend)

    I do most modifications on the ls_script because if it works then I am in business and do not have to touch the core liq's (like utils.liq or persuasive liq's) or any configuration files.I then stress test my solutions looking for memory leaks,cpu utilization,Xruns,clocks etc. and depend on the type of modification I then blog about it from 7 days -3 weeks.

    Recording can be done in either of two ways

    -Airtime way (add a show in your calendar ===> check the record and rebroadcast)

    -Modified ls-script I did for the inputs
     
    Just put the statement (still Work in progress)

    example formats
    output.file(%vorbis, output,fallible=true,source)
    or
    output.file(%mp3, output,fallible=true,source)

    V.O.I.S.S.E.S
    Can you Hear Me Now

    Post edited by Voisses Tech at 2013-09-24 10:46:00
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • Vote Up0Vote Down hoerichhoerich
    Posts: 627Member, Airtime Moderator

     
    Just put the statement (still Work in progress)

    example formats
    output.file(%vorbis, output,fallible=true,source)
    or
    output.file(%mp3, output,fallible=true,source)

    V.O.I.S.S.E.S
    Can you Hear Me Now



    this would create an endless file, wouldnt it?
    how to expand this code to cut files hourly?
    Official Airtime Forum Manager
    --------------------------
    Most of the time an issue is located between keyboard and chair.
  • Vote Up0Vote Down Albert SantoniAlbert Santoni
    Posts: 68Member, Sourcefabric Team, Airtime Moderator
    Thanks for the suggestions and constructive feedback guys! I agree we could do a better job at addressing these more traditional use cases and I hope we can prioritize these in the future. I'm curious to hear more about what other "live" features you'd like to see...

    Thanks!
    Albert
    Airtime Developer @ Sourcefabric
  • Here is the script  for  for input and recording that input

    # Input from ALSA

    studioInput = input.alsa()
    urlstream=input.http("http://localhost:port/")

    # The output file
    # to be saved with parameters date and time
    outputfile = "/tmp/myrecordfile-%Y-%m-%d-%H-%M-%S.mp3"


    studioInput= amplify(2.0,input.alsa())

    myInput=mksafe(studioInput)
    myurlstream =mksafe(urlstream)


    StreamstudioInput = fallback(track_sensitive = false,[strip_blank(max_blank=10.,threshold=-35.,myInput),myurlstream])

    output.icecast( %mp3(stereo=true, bitrate=128, samplerate=44100),
                  password = "hackme", mount = "yourmount",
                  name = "metatag",
                  genre = "genre",
                  timeout = 10.0,
                  url = "yourwebsite",
                  description = "yourdescription",
                  StreamstudioInput            

                   )


    #with a newfile each time its open [append] and open that file every xxx time [reopen_when]
    #{0m0s} is every hour
    output.file(%mp3, output,fallible=true,append=true,reopen_when={0m0s},on_stop=shutdown,studioInput)


    - See more at: http://forum.sourcefabric.org/discussion/15915/record-output-to-a-file-every-hour-from-input-alsamicand-icecast-how-to

    You might have to tweak your script by placing the following at the top
    #for Alsa Inputs
     set("frame.size",700)

    # for Alsa Outputs
    set("decoding.buffer_length", 20.)
    set("frame.channels", 2)
    set("frame.samplerate", 44100)

    - See more at: http://forum.sourcefabric.org/discussion/15904/input-mic-and-mixer-using-alsa-something-that-will-work-using-airtime-script-modified

    Post edited by Voisses Tech at 2013-09-26 22:24:37
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • I have been looking around at other Web based Radio Automation and i have picked up on two things

    1) they all offer play/pause and entering voice clips straight into the application

    2) Airtime is the ONLY one that offers its software as opensource and free download
  • Hey all,

    I have been doing more research and have found that accessing your media (mic/camera) from a web browser is an emerging technology and has limited browser support

    to support all web browsers, mobile browsers excluded, unfortunately Flash is needed.
    This is a well documented flash based audio recorder
    https://code.google.com/p/wami-recorder/

    And when i get home from work in a week i plan to do my best in implementing it, but i imagine it will be a very hack job if i even succeed 
  • Vote Up0Vote Down Daniel JamesDaniel James
    Posts: 844Member, Sourcefabric Team
    One way to achieve play/pause in current Airtime is to leave some time empty in the show, and then drag and drop files into the schedule as you need them on the Now Playing page. For full manual control you can use Mixxx or IDJC to stream into Airtime from your desktop.

    Consider that Airtime is all about automation and strict timing. What happens if the presenter talks for too many seconds and clicks the manual play button late? We then have to fade the final item in the show. That may be acceptable for music shows, but it's a no-no for speech content such as news or journalism.

    One way to retain strict control over timing is to have a voice block of fixed duration which is inserted between other items in a show. That is currently possible using pre-recorded voice tracks, but we have a ticket open for doing this directly in the browser using the Web Audio API:

    http://dev.sourcefabric.org/browse/CC-4509

    As an interim step, if we had a voice block that contained silent audio or low-level background music, it would be possible for FM stations to talk over that using a hardware mixer. The presenter would have to watch the Airtime interface to know how long to talk for.

    Any progress that can be made on this feature would be very welcome, it doesn't matter how hacky it is to start with :-) It's all good research.

    Cheers!

    Daniel    
  • yes, but do a live speach, and at the same time be very tied with time, and continuously look at it, it's hard work. Maybe, then, it whould be possible to add "fade/mix to next" button. So You could add 10 minutes of silence/background music, and then You finish, just click [next], and mix to next event (to music).

  • Hey @serpentxx,

    just FYI - I've tried to contact you via your project post on freelancer.
    Great to see you found our forum :)
    Would love to hear more about your project - let's talk!
    You can contact me via lisa.lang@sourcefabric.org

    Best,
    Lisa.



    On Sat, Oct 5, 2013 at 2:06 PM, serpentxx <<br />airtime-dev@lists.sourcefabric.org> wrote:

    > Hey all,
    >
    > I have been doing more research and have found that accessing your media
    > (mic/camera) from a web browser is an emerging technology and has limited
    > browser support
    > http://www.w3.org/TR/2013/CR-html-media-capture-20130509/
    >
    > to support all web browsers, mobile browsers excluded, unfortunately Flash
    > is needed.
    > This is a well documented flash based audio recorder
    > https://code.google.com/p/wami-recorder/
    >
    > And when i get home from work in a week i plan to do my best in
    > implementing it, but i imagine it will be a very hack job if i even succeed
    >
    >
    Airtime Lead
    Head of Products at Sourcefabric
    *-*
  • Vote Up0Vote Down Daniel JamesDaniel James
    Posts: 844Member, Sourcefabric Team
    Hi Henrikas,

    Talking to time is a skill that radio presenters are expected to learn, but if you don't want that level of rigour then manual playout triggering is probably the answer.
    Henrikas said:

    Maybe, then, it whould be possible to add "fade/mix to next" button. So You could add 10 minutes of silence/background music, and then You finish, just click [next], and mix to next event (to music).



    You can kind of do this in Airtime by removing the background music from the schedule, but the transition doesn't sound good: http://dev.sourcefabric.org/browse/CC-5019

    Cheers!

    Daniel
  • Yes, i saw that. But still it's some kind of hack, and little bit tricky. And sounds not very good.
    Yes, i know, that it would be great to have good radio presenters, but when it becomes tied with voulunteers, it becomes nearly impossible.
    Maybe it would be possible to add button [play next], that would do same thing as deletion (just jump to next). So people with less skils just could push button, and don't mess about looking what is playing, and trying to delete it.

    Thank You.

  • Post edited by Voisses Tech at 2013-10-09 13:23:28
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • @Daniel James wrote

    "For full manual control you can use Mixxx or IDJC to stream into Airtime from your desktop."

    This what I used to do with butt,IDJC and Mixxx,however one live session butt would not get up.

    You see when you said

    "That may be acceptable for music shows, but it's a no-no for speech content such as news or journalism "
    A station which focus on music just want the dj's to come in and use a line input on on the air.
    If the Dj is remote then in old days we use to just mount the dj in Icecast or Shoutcast.

    So here in lies the difference and dilemma between that expectation of persons streaming and those using live inputs.mainly  a station focus as Music as its rotation and not News and talk.

    If you test my Live Inputs in the section

    http://forum.sourcefabric.org/discussion/15915/record-output-to-a-file-every-hour-from-input-alsamicand-icecast-how-to

    and just # out the url stream [I did the url stream when @hoerich suggested it as a fall back]

    put default as the fallback as soon as some comes on live the system switches over

    You can schedule your show and its comes on even if the person does not turn any switch on
    Fade are automatically done by the line in  ls_liq function for schedule switch.

    You can listen my test station (Caribbean Experience ) at the start 11:00am(1100) or at the End 2:30pm(1430)EST.

    I rebroadcast  a station set in webstream everday at that time and Mon,wed and friday 7pm-10pm (1900-2200 EST) ,I restream the main station

    I use just Airtime for everything,

    I used the nowplaying,I have a 15,30 and 60 seconds blank file in my library.

    When I am live and I want to do any talking I just drag one in and then delete the current playing.


    I think if time allowed I will do a screencast this weekend to show How I really make it works

    My station announces the time (when in fallback or nothing is schedule,not when something is schedules) and have different schedules per day etc.

    There are many hidden features in Airtime  I think people have not seen or used.

    I only Used butt remotely occasionally.but everything is connected to my mixer

    Ps. My butt fail because someone touch it.
    They put a cable that had only 4wires (2Tx and 2Rx) on the router instead of the Rj45(8wire)


    ***********************
    * V.O.I.S.S.E.S.      *
    * Can You Hear Me Now *
    ***********************

    ♬♬♬♬♬♬♬♬♬♬♬♩♪♫♩♪♫♪♩♫♪♩ ♬♬♬♬♬♬♬♬♬♬♬
    ######################################################
    [En][24/7][712- 432- 8476]############################
    http://tunein.com/radio/BIGLINK-RADIO-s190864/

    [Korean][24/7] [712- 432- 8464]#######################
    http://tunein.com/radio/Goaheadmissionorg-s190399/

    [En][Sundays 2300-Mondays 0600 EST][712- 432- 8437]###
    http://tunein.com/radio/Caribbean-Experience-s200915/
    ######################################################

    Post edited by Voisses Tech at 2013-10-09 13:28:34
    Anyone reading this a find it funny about my grammar , I make no apology ,Go get a translator.
    "The Problem with education today is that it takes a university degree to switch on a light bulb"
    "You learn from your mistakes but wise people learn from others mistakes avoid Making mistakes there is not sufficient rooms to make them"
    "Innuendo","If's","Assumptions" and "Fear" are for politician.Who,What,where,When and How are for those seeking knowledge and care about Humanity.
    "I might be in Mud but that does not Make me a Wild Hog(pig)"
    “Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius — and a lot of courage to move in the opposite direction.”
    "The only thing that remains constant is change itself"
    May the force be with you,until our path or destiny bring us in tandem.
  • Vote Up0Vote Down Albert SantoniAlbert Santoni
    Posts: 68Member, Sourcefabric Team, Airtime Moderator
    Hey serpentxx, 

    Don't worry about it being a hack job! If you're motivated, just code something and we'll see what happens! Maybe we'll get a proof-of-concept from this, or you'll discover some cool ways recording could work for Airtime in the future. :)

    Thanks, and I'm excited to see what comes out of this!
    Albert
    Airtime Developer @ Sourcefabric