Gramin Radio Inter Networking System v0.3
User Guide


Table of Contents

1. Introduction
2. Using the library
2.1. Upload and Search
2.2. Metadata editing
3. Managing the playlist
3.1. Creating playlists
3.2. Simulation mode and live mode
3.3. Hotkeys
4. Managing Phone Calls
4.1. Handling incoming calls
4.2. Managing active calls
4.3. Dialing out
4.4. Telephone Conference
4.5. Broadcasting
5. Streaming your Broadcast audio on the Internet
6. Backup
7. Diagnostics and Troubleshooting
7.1. Running a diagnostics check
7.2. Troubleshooting

Chapter 1. Introduction

This document will guide you through the usage of the Gramin Radio Inter Networking System v0.3. GRINS is designed to be used in a radio station by the radio jockey to run live broadcasts, and schedule broadcasts of pre-recorded content. A distinguishing feature of GRINS is its support for telephony: the RJ can make and receive phone calls through the user-interface, archive the call, put it on air, and even conference between multiple callers. In addition, GRINS provides support to record any audio that is spoken out by the RJ on mic. GRINS also has an extensive library to maintain detailed metadata about various programs, faceted metadata search of the library, and to derive statistical information about broadcasts. Diagnostics are in-built to help the radio station operators find faults in the system, such as faulty audio cables and incorrect network connections. In the upcoming versions, GRINS will also provide support to send and receive SMS messages and support voice applications, to allow greater interaction with the audience.

GRINS has been designed with objective to build systems for community radio stations in rural ares of developing countries, such as India. Therefore, to keep costs low, GRINS attempts to do most audio operations in software to eliminate the need of buying expensive audio hardware systems. Extensive effort has also been put into providing rich features in a simple manner, so that non-tech-savvy operators can also quickly learn how to use the system. In the same context, diagnostics support is provided so that radio station operators can debug common faults locally, and do not have to wait for trained technical staff to visit the radio station and fix problems. Finally, GRINS is extremely flexible to be deployed across multiple machines. This becomes useful if GRINS is to be deployed in a plug-n-play manner in some existing radio station setup which has various cables already hardwired into computers and mixers, and the staff are reluctant to touch the configuration. GRINS guides you through a simple wizard to define your radio station environment, and configures itself accordingly.

Chapter 2. Using the library

2.1. Upload and Search

  1. Upload

    The very first thing you need to do is to populate the GRINS library. Look at the bottom left of the screen and you will find the upload icon.

    Clicking on the icon, opens the upload widget in the workspace. Use the file-chooser to select files for upload.

  2. Search

    The next step is to learn to use the library. Click the library icon in the bottom left of the screen.

    Clicking the icon, opens the library widget in the workspace. This has many extensive features, but is very simple to use. Various features are explained below.

    1. Free text search:

      You can type keywords in the Search Query box, and click on the Search button. Results will be shown in the Search Results panel.

    2. Faceted metadata search:

      GRINS supports a style of search called faceted metadata search, inspired by the Flamenco project. Various facets available by default are shown as Search Filters. Whenever a filter is activated, the filter details are shown in the Active Filters panel. For example, here the Language and Artist filters are active, although no selections have been made in the filters. Once selections are made, the results of all active filters and the results of the search query are ANDed together, and the common subset of results is populated in the Search Results panel.

    3. Stats and list mode:

      GRINS can display the search results either as a list, or use the results to generate statistics about the history of when the search results were played out in the past. This can be used to, for example, chalk out graphs of the history of programs related to health, or programs related to women empowerment, etc.

    4. Examples of search filters:

      GRINS by default includes a number of search filters. The Language Filter allows you to search for programs in a particular language. The Artist/Creator filter enables selections on the name of the artist or creator, the location where the program was created, the affiliation of the creator with the program -- as an artist, or a script writer, or a funding agency, etc, and the role of the creator -- whether it is a non-governmental organization, or a staff member, or a volunteer, etc. The Length filter allows you to search for programs which are less than a specified length. The Type filter allows search on mic recordings or other types of programs. The New Items filter returns programs added to the library in the last week, either through uploads, or through mic recordings. The Playout History filter enables search based on a time window in which programs were played out. In addition to these default filters, GRINS also allows category filters, where different types of nodes from orthogonal category tress can be selected. Based on the programming focus of the radio station, different categories can be defined, such as categories for health related programs, or politics related programs, or sports related programs, etc.

  3. Edit

    You would now want to preview the audio programs you uploaded, and edit their metadata. Notice the small cluster of three buttons on the right of the items shown in the search results.

    Clicking on the icon marked "i" opens a widget with the detailed metadata for the item. And clicking on the headphones icon plays the audio through your headphones. Note that as long as you have all the connections set up properly, you can preview audio programs even if there is a playout in progress.

2.2. Metadata editing

GRINS supports two modes of editing: editing an item individually, and doing a group edit. A group edit applies any changes to all items that are a part of the group of selected items. Various features supported by the metadata editor are described next.

  1. Title, description, tags

    Edit the appropriate text field.

  2. Language

    Select a language from the dropdown, or type a new language not already present in the database and press ENTER.

  3. Statistics

    The graph shows the entire playout history of the item from the time it was added to the GRINS library.

  4. Artists/Creators

    This field allows you to add as many artists or other entities affiliated with a program. For example, you may want to record the name of the funding agency, or the script writer, or the NGO under who's direction the program was produced.

  5. Categories

    You can associate as many orthogonal category facets with each program. The current version of GRINS comes with pre-defined categories and does not allow you to define your own categories; this feature will be made available in the next release.

Chapter 3. Managing the playlist

3.1. Creating playlists

You can easily create playlists by dragging and dropping programs from the library search panel into the playlist section. The playlist is always active and can be controlled through the following buttons.

  1. Clears the playlist.

  2. Opens a selection to load a new playlist.

  3. Opens a selection to save a playlist. Either you can overwrite an existing playlist, or type the name for a new playlist.

  4. Opens the following options to configure playlists.

    You can specify the time at which you want the playlist to start playing, and GRINS will automatically trigger the playout even if you are not around. Through the fadeout option, you can specify the number of seconds before the end of a program at which it fades out to smoothly transition to the next program.

  5. Playout duration

    Finally, once you have a number of programs in your playlist, this is what each item will look like. You can see two pieces of timing information: The first indicates the time when this particular item is supposed to be played out, and the second indicates the duration of this item. Thus, you can come to know how long a playlist you have created by checking the time at which the last item in the playlist will be played out. The rest of the buttons are explained next.

3.2. Simulation mode and live mode

If the radio station staff is not confident of going out live on air, they can actually simulate a live interaction through the simulation mode. The entire look and feel is the same as the live mode explained in the next section, except that audio is only available for preview and not for live playout. Once you save a playlist in the simulation mode, you can go back to live mode, load the playlist, set the starting time of the playlist, and go out for a beer!

Various features available in the playlist are explained next.

  1. Regular playout operations

    Plays the program. The currently active program is also added to the logs.

  2. Pauses the program.

  3. Stops the program.

  4. Moves to the next program.

  5. Adjusts the volume.

  6. Records whatever is being spoken out on the Mic.

  7. Previews the program on headphones.

  8. Stops the preview.

  9. Opens the metadata information widget for this item.

  10. Marks/Unmarks this items with fadeout. The default value of the fadeout duration initialized in Playlist Options will be used to fade out this program when it ends.

  11. Inserting live slots:

    There are two ways to insert live slots when the RJ intends to go out live on the Mic. If the RJ presses the INSERT key, it inserts a Go-Live slot in the playlist. This slot is considered equivalent to any other playlist item, except that it does not play anything -- the RJ is instead supposed to speak into the Mic. The intended duration of the live slot is 10 seconds by default, but can be changed by clicking on the Go-Live button. The second method to insert a live slot is by directly clicking on the Go-Live button for a music item. The important point to note is that GRINS does not automatically advance a live item being played out. A live item entry is interpreted as a slot when the RS would go out live on air, and hence once the RJ is done talking, the NEXT button must be pressed to move to the next item in the playlist. The 10 seconds Go-Live duration is only meant as an indication to know how much time should ideally be taken in this slot.

    This open an options menu with the following options.

    You can specify the duration of the live slot, and if a music item was converted into a live slot then you can also specify if you want to play that music in the background while the RJ speaks on the Mic.

3.3. Hotkeys

Clicking on the Hotkeys button opens the Hotkeys widget. You can initialize hotkeys that the RJ can use to play out common sounds while doing a live Mic broadcast. Sounds such as laughter, or clapping, or a pin drop, or even the characteristic jingle of the radio station. The initialization is done by pressing the "Add Hotkey" button, and dragging-dropping a file from the library search results. You can also give a colour of your choice to each Hotkey, so that the RJ can easily recognize a Hotkey.

Chapter 4. Managing Phone Calls

Starting with version 0.3, GRINS comes with a telephony widget that allows an RJ to accept incoming phone calls, make outgoing calls, and add metadata to the recorded calls. GRINS currently works only with analog telephony adaptors (ATA). Other types of devices will be supported in later versions.

4.1. Handling incoming calls

  1. Allow incoming calls

    You can ask GRINS to start accepting calls by pressing the "Allow Incoming" button. When this button is pressed, all calls coming into GRINS are displayed in the incoming calls list. These calls appear in the form of buttons with caller ID written on them.

  2. Accept incoming calls

    To accept an incoming call, simply press the button corresponding to the call. When you press the button, the button moves to the accepted call list. You can talk to the caller by speaking into your microphone you use for speaking on air. You will hear the caller's voice through you monitor head phones. The moment you accept a call, the call starts getting recorded automatically.

4.2. Managing active calls

  1. Switching between active calls

    Note that if you have more than one telephone connection connected to GRINS, then you can have multiple active calls. You can switch between them by simply clicking on the button of the caller you want to talk to. If you were already talking to a person at that time, then that person is put on hold.

  2. Editing call information

    You can edit call related information for the current call when a call is active. You can edit caller ID, name, and location for the caller, and add tags and categories for the call. Once you are done editing the information, you can save the information using the save button. When no calls are active, you can choose one of the recently completed calls from the dropdown near the save button to edit its information.

  3. Hanging up a call

    To hangup a call, press the button with the hangup icon attached to the button of the call. You can hangup a call either when it is in the incoming calls list or when it is in the accepted calls list. Once the call is hung up, it is available in the library, just like all the other programs.

4.3. Dialing out

A dial-pad is provided in the bottom left of the telephony widget to dial out from GRINS. You can search for a name already saved by you by typing at least 3 letters of the name in the Name field. Once the call is dialled, it appears in the active calls list.

4.4. Telephone Conference

You start a conference among all active calls by pressing the "Conference" button. Note that only the call with its button pressed can speak in the conference. All other callers are muted. This allows you to control the flow of the conference.

4.5. Broadcasting

You can put the selected call or the entire conference live on air by pressing the "Go Live" button.

Chapter 5. Streaming your Broadcast audio on the Internet

Since version 0.2.6 GRINS allows you to stream your broadcast audio over the Internet. Streaming Widget allows you to configure GRINS to send your broadcast audio to an Icecast/Shoutcast server, from where listeners around the world can listen to your station over the Internet.

To use GRINS for streaming your broadcast audio you need to specify Icecast server parameters, specify the type of audio to be sent to the server, apply the settings, and press the start button. Before you can start streaming to the Internet you need to register with a streaming service provider, who will give you the server parameters. You can specify these parameters in the streaming widget to start streaming through the server. The audio parameters you choose will mostly be governed by the speed of your Internet connection to the server.

Chapter 6. Backup

It is important to backup your data from time to time. Not only is the content important, but all metadata that you may have entered in GRINS database also needs to be appropriately backed up. GRINS provides a very flexible backup procedure: You can choose to maintain your backups on CDs, or DVDs, or a hard-disk of another computer.

GRINS maintains backups in incremental volumes. For example, if you want to use CDs as your backup medium, each time you initiate the backup process, GRINS will create a new volume of up to 700 MB (which is the maximum available space on a CD). When you initiate the backup process a second time, GRINS will create a fresh volume but from beyond the last point of backup. So, whenever you initiate a backup, GRINS creates a new checkpoint, and the backup from the last checkpoint to the new checkpoint is called a volume. You can define the maximum volume size to be that of a CD (700 MB) or a DVD (4.6 GB) or a custom size (e.g. 100 MB) to be backed up up periodically on another computer.

Four options are presented. You can either reset the entire backup process to remove any checkpoints and create a backup from scratch. Or, you can continue your backup process and create a new backup volume. If you have lost some specific backup volume, you can recreate just that volume. And finally, you can restore a GRINS setup from backup.

Chapter 7. Diagnostics and Troubleshooting

7.1. Running a diagnostics check

You should definitely run the diagnostics widget each time before you go out live on air. It is meant to identify any network related problems or audio cable connection faults, if for example, somebody knocked out a network cable or pulled out a soundcard accidentally. The diagnostics widget offers two views: A list view and a network view.

  1. List view

    Once you run diagnostics, it will prompt you if you can hear the audio properly, and generate a view similar to the one shown below. This tells you which components are working fine, and which ones are not.

  2. Network view

    Once you run the network connectivity check, if will generate a view showing you the status of services running on different machines, and the network connectivity between these machines. Green lines show connectivity and red lines indicate a loss of connectivity.

  3. Restart and shutdown

    If things go drastically wrong, you can remotely restart your machines. You can also shutdown your machines remotely when wrapping up for the day or when packing up for a long weekend or a holiday.

    Restarts all remote machines in the setup. This button also restarts all the services running on the same machine as the application.

    Shuts down all remote machines. This button will also shutdown all services running on the same machine as the application. General usage for this button would be to shut the setup down before shutting down the local machine.

7.2. Troubleshooting

You may encounter the following types of errors:

  1. Network error

    Please check all your network cables, that they are hooked correctly into the various machines and the hub. The easiest way is to look at the blinking lights. If lights are not blinking, it means that something is wrong. Either the connections are faulty or the machine is dead. Restart the machine to confirm.

  2. Audio cable fault

    Please check all your audio cables, running from your Mic into the Mixer, or from the Mixer to the machines, or from the machines to Mixer and headphones, etc. GRINS runs DSP tests to check the audio quality available on various soundcards. An error here means that either your cable connections or your soundcard fixture are loose or faulty.

  3. Service fault

    If at all you do see this error, it should be very rare. It could potentially happen due to some bugs that cause inconsistent states across machines. GRINS should automatically set itself right, but if problems persist, then the safest option is to restart the user-interface or the machines. In the future, we will enable log shipping so you will be prompted to send your logs to us to check for bugs, and updates will be delivered to you automatically.

  4. Unable to play file

    This may happen if the file is corrupt. If we are able to detect a corrupt file, we show you the status as a RED color on the file entry in the playlist. But if we are not able to detect it internally, the playout subsystem of GRINS may cause this error. But if you get the same error with many files, it most likely indicates that some essential GRINS service is malfunctioning. If the system does not set itself right on its own, then try restarting the machine running the playout service.

Lastly, if all fails, then write to us explaining your configuration and problem, and we will try our best to guide you in the right direction.