GNOME Radio 16 on GNOME 42 Presentation at GUADEC 2022

GNOME Radio 16 is the Public Network Radio Software for Accessing Free World Broadcasts on Internet running on GNOME 42.

GNOME Radio 16 is available with Hawaii Public Radio (NPR) and 62 British Broadcasting Corporation (BBC) live audio broadcasts for GNOME 42.

The latest GNOME Radio 16 release during GUADEC 2022 (between July 20-25, 2022) features 200 international radio stations and 110 city map markers around the world, including National Public Radio, 62 BBC radio stations broadcasting live from United Kingdom and 4 SomaFM radio stations broadcasting live from San Francisco, California. GNOME Radio 16 for GNOME 42 is developed on the GNOME 42 desktop platform with GNOME Maps, GeoClue, libchamplain and geocode-lib and it requires at least GTK+ 3.0 and GStreamer 1.0 for audio playback.

Join the Bird of a Feather meeting about GNOME Radio 16 on GNOME 42 during the GUADEC 2022 at 24 Jul 2022 13-15 in GUADEC 2022-Track 2 Samsung at https://meet.gnome.org/gua-t9b-upx-mlt

8 years before GNOME 43 occured I began writing GNOME Internet Radio Locator for GNOME 2 between 2014-2017 and 5 more years GNOME 3, after Norwegian Broadcasting Corporation (NRK) shut down its FM broadcasts. In 2022 we are going to build GNOME 43 support for further international as well as Norwegian radio stations with help from the GStreamer and the GNOME community.

Here is some of the newly written code for GNOME 43 in the new GNOME Radio 42 application org.gnome.Radio:

#include <gst/player/player.h> #include <gtk/gtk.h> static void activate(GtkApplication * app, gpointer user_data) { GtkWidget *window; GstPlayer *player; window = gtk_application_window_new(app); gtk_window_set_application (GTK_WINDOW(window), GTK_APPLICATION(app)); gtk_window_set_title(GTK_WINDOW(window), "Radio"); gtk_window_set_default_size(GTK_WINDOW(window), 800, 600); gtk_widget_show(window); player = gst_player_new (NULL, gst_player_g_main_context_signal_dispatcher_new(NULL)); gst_player_set_uri (GST_PLAYER (player), "http://stream.live.vc.bbcmedia.co.uk/bbc_world_service"); gst_player_play (GST_PLAYER (player)); } int main(int argc, char **argv) { GtkApplication *app; int status; gst_init(&argc, &argv); gst_init(NULL, NULL); app = gtk_application_new("org.gnome.Radio", G_APPLICATION_FLAGS_NONE); g_signal_connect(app, "activate", G_CALLBACK(activate), NULL); status = g_application_run(G_APPLICATION(app), argc, argv); g_object_unref(app); return status; }

GNOME Internet Radio Locator 3 (Washington)

In 2018 I began writing my Bachelor of Science thesis in Electrical Engineering about GNOME Radio and GNOME Internet Radio Locator and on June 24, 2020 I published my Bachelor thesis on GNOME Radio; gnome-radio-16.0.43 and gnome-internet-radio-locator-12.6.0, at Oslo Metropolitan University and University of Oslo in Norway.

See my GUADEC 2022 talk on GNOME Radio 16 scheduled for the BoF Workshop GUADEC 2022 BoF Rm 2 session July 24, 2022 between 13:00-15:00.

Visit gnomeradio.org and wiki.gnome.org/Apps/Radio for full details on GNOME Radio 42.

Voice 0.0.6 for GNOME 43

Voice is a new Public Voice Communication Software being built on GNOME 43.

Voice will let you listen to and share short, personal and enjoyable Voicegrams via electronic mail and on the World Wide Web by GNOME executives, employees and volunteers. Ogg Vorbis is a patent-free audio codec that more and more Free Software programs, including GNOME Voice (https://www.gnomevoice.org/) have implemented, so that you can listen to Voicegram recordings with good/fair recording quality.

The sixth Voice 0.0.6 release with live microphone recording into $HOME/Music/GNOME.ogg is available from https://download.gnome.org/sources/gnome-voice/0.0/gnome-voice-0.0.6.tar.xz

The latest Voicegram recording gets stored in $HOME/Music/GNOME.ogg

More information about Voice is available on https://wiki.gnome.org/Apps/Voice and http://www.gnomevoice.org/

Update DOAP description in GNOME Software for Gingerblue 6.0.1

I have released Gingerblue 6.0.1, new generation Mic / USB sound recording app on GNOME 43.

https://wiki.gnome.org/Apps/Gingerblue

However, there is no description of it in GNOME Software on GNOME 43.

https://download.gnome.org/sources/gnome-radio/6.0/gingerblue-6.0.1.tar.xz

GNOME Software needs to be updated to display information about Gingerblue for this to be implemented properly.

https://gitlab.gnome.org/ole/gingerblue/-/raw/master/data/gingerblue.appdata.xml.in
https://gitlab.gnome.org/ole/gingerblue/-/raw/master/gingerblue.doap

You can open $HOME/Music/GNOME.xspf for the latest recording with Rhythmbox, but so far meta tagging of Ogg Vorbis files is not yet implemented in GStreamer for the Ogg container, after Initial work on meta tagging to Ogg Vorbis in Gst recorder pipeline in Gingerblue, but not yet working in GStreamer.

From https://gitlab.gnome.org/ole/gingerblue/-/blob/master/src/gingerblue-main.c


#include <gst/gst.h>
#include <gst/player/player.h>
#include <gst/tag/tag.h>
...
GstTagList *tag_list;
...
GstElement *src, *conv, *enc, *muxer, *sink, *recorder;
gchar *filename = NULL;
GDateTime *datestamp = g_date_time_new_now_utc ();
GstElementFactory *factory;
gst_element_send_event(recorder, gst_event_new_eos());
recorder = gst_pipeline_new("record_pipe");
...
src = gst_element_factory_make("autoaudiosrc", "auto_source");
conv = gst_element_factory_make("audioconvert", "convert");
enc = gst_element_factory_make("vorbisenc", "vorbis_enc");
muxer = gst_element_factory_make("oggmux", "oggmux");
sink = gst_element_factory_make("filesink", "sink");
...
tag_list = gst_tag_list_new (GST_TAG_ARTIST, gtk_entry_get_text(GTK_ENTRY(musician_entry)), NULL);
gst_stream_set_tags (GST_STREAM (recorder), tag_list);
tag_list = gst_tag_list_new (GST_TAG_ALBUM, gtk_entry_get_text(GTK_ENTRY(album_entry)), NULL);
gst_stream_set_tags (GST_STREAM (recorder), tag_list);
tag_list = gst_tag_list_new (GST_TAG_TITLE, gtk_entry_get_text(GTK_ENTRY(song_entry)), NULL);
gst_stream_set_tags (GST_STREAM (recorder), tag_list);
tag_list = gst_tag_list_new (GST_TAG_COPYRIGHT, gtk_entry_get_text(GTK_ENTRY(label_entry)), NULL);
gst_stream_set_tags (GST_STREAM (recorder), tag_list);
tag_list = gst_tag_list_new (GST_TAG_PUBLISHER, gtk_entry_get_text(GTK_ENTRY(label_entry)), NULL);
gst_stream_set_tags (GST_STREAM (recorder), tag_list);
tag_list = gst_tag_list_new (GST_TAG_DATE_TIME, datestamp, NULL);
gst_stream_set_tags (GST_STREAM (recorder), tag_list);
gst_vorbis_tag_add (tag_list, GST_TAG_ARTIST, gtk_entry_get_text(GTK_ENTRY(musician_entry)));
gst_vorbis_tag_add (tag_list, GST_TAG_ALBUM, gtk_entry_get_text(GTK_ENTRY(song_entry)));
gst_vorbis_tag_add (tag_list, GST_TAG_TITLE, gtk_entry_get_text(GTK_ENTRY(song_entry)));
gst_vorbis_tag_add (tag_list, GST_TAG_COPYRIGHT, gtk_entry_get_text(GTK_ENTRY(label_entry)));
gst_vorbis_tag_add (tag_list, GST_TAG_PUBLISHER, gtk_entry_get_text(GTK_ENTRY(label_entry)));
gst_vorbis_tag_add (tag_list, GST_TAG_DATE_TIME, datestamp);
gst_vorbis_tag_add (tag_list, GST_TAG_DATE_TIME, datestamp);
gst_stream_set_tags (GST_STREAM (recorder), tag_list);

Hope this motivates one of us to implement gst_vorbis_list_new, gst_vorbis_tag_add and gst_stream_set_tags properly!

You can use Gingerblue 6.0.1 to record audio from GNOME Radio with a built-in laptop microphone, but it remains to be implement recording in Gingerblue in patent-free, lossless HiFi recording quality (FLAC).

See http://planet.nuug.no/ and https://blogs.gnome.org/oleaamot/2022/05/28/gingerblue-6-0-1-with-immediate-ogg-vorbis-audio-encoding/ for link to the RPMS for Fedora Core 36.

You’ll find the code in https://gitlab.gnome.org/ole/gingerblue/

I urge a move of the code to https://gitlab.gnome.org/GNOME/gingerblue.

Gingerblue records immediately audio from a connected microphone and runs stable on Fedora Core 36 under GNOME 42.

GNOME Developer and User Conference 2022

The annual GNOME Developer and User Conference 2022 will be held in Mexico, where it was scheduled to take place last summer. Here are the first details to participate, as it starts July 20, 2022.

This year is special for the GNOME community in several ways.

On the one hand, GUADEC falls within the context of GNOME’s 25th anniversary. On the other, the 2022 conference marks
the return to personal events. Finally, it is the first GUADEC on the American continent.

What is GUADEC?

GUADEC is the largest conference in the GNOME community. It brings together hundreds of users, contributors, community members for a week of conferences and workshops.

When is GUADEC this year?

The GNOME Foundation has planned GUADEC 2022 this year for 20-25 July 2022.

Where will GUADEC take place in 2022?

The event takes place in Guadalajara, Mexico. However, the event will be hybrid and it is possible to participate externally.

The program

The program is not yet defined at the time of writing these lines.

How to register

You can already register for free online on the official website via https://events.gnome.org/event/77/

If the registration is free, it is possible to make a donation via the registration page.

Update DOAP description in GNOME Software for GNOME Radio 16.0.43

I have released GNOME Radio 16, new generation Radio app for GNOME 42.

https://wiki.gnome.org/Apps/Radio

However, there is no description of it in GNOME Software on Fedora Core 36.

https://download.gnome.org/sources/gnome-radio/16.0/gnome-radio-16.0.43.tar.xz

GNOME Software needs to be updated to display information about GNOME Radio 16 for this to be implemented properly.

https://gitlab.gnome.org/ole/gnome-radio/-/raw/main/gnome-radio.doap
https://gitlab.gnome.org/ole/gnome-radio/-/raw/main/data/gnome-radio.appdata.xml.in

You can use Gingerblue 6.0.1 to record audio from GNOME Radio with a built-in laptop microphone, but it remains to be implement recording from GNOME Radio in lossless quality.

See http://planet.nuug.no/ and https://blogs.gnome.org/oleaamot/2022/05/28/gnome-radio/ for link to the RPMS for Fedora Core 36.

You’ll find the code in https://gitlab.gnome.org/ole/gnome-radio/

I urged a move of the code to https://gitlab.gnome.org/GNOME/gnome-radio however it was voted down.

GNOME Radio 16.0.43 runs smoothly on Fedora Core 36 under GNOME 42.

Recording in Stereo Audio (two channels) in Gingerblue 6.0.1 with Scarlett 2i2 USB sound card

If the sound card is USB, it is possible to record two channels (also known as Stereo) with Gingerblue 6.0.1.

Here’s an example of Stereo recording on Hewlett Packard portable running Gingerblue 6.0.1 on Fedora Core 36 with the Focusrite Scarlett 2i2 USB external sound card:

This autumn I am taking a course in audio engineering (Location recording at the Norwegian Academy of Music) and I have released Gingerblue 6.0.1 on https://download.gnome.org/sources/gingerblue/6.0/gingerblue-6.0.1.tar.xz and https://gitlab.gnome.org/ole/gingerblue.git with Ogg Vorbis encoding and this course is about Stereo recording.

To write my own Stereo audio recording software for this engineering course is a fun experience.

See https://blogs.gnome.org/oleaamot/2022/05/28/gingerblue-6-0-1-with-immediate-ogg-vorbis-audio-encoding/ for details about Immediate Ogg Vorbis Audio encoding in Gingerblue 6.0.1 and https://wiki.gnome.org/Apps/Gingerblue for more information on Gingerblue.