Opened 8 years ago
Closed 8 years ago
#52993 closed update (fixed)
GNOME girl 9.6.0
Reported by: | oleaamot (Ole Aamot) | Owned by: | dbevans (David B. Evans) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | ||
Port: | girl |
Description
GNOME Internet Radio Locator (GIRL) version 9.6.0 was released on December 1st, 2016 with updated translations for Czech, Hungarian, Polish, Brazilian Portuguese and Swedish. The new feature in this release is gstreamer playback of audio.
Attachments (5)
Change History (17)
Changed 8 years ago by oleaamot (Ole Aamot)
Attachment: | Portfile.9.6.0.diff added |
---|
comment:1 Changed 8 years ago by mf2k (Frank Schima)
Keywords: | gnome removed |
---|---|
Milestone: | MacPorts 2.3.6 |
Version: | 2.3.5 |
comment:2 Changed 8 years ago by mf2k (Frank Schima)
Also, please keep the whitespace you are removing.
Changed 8 years ago by oleaamot (Ole Aamot)
Attachment: | Portfile-9.6.0-unstable added |
---|
GNOME Internet Radio Locator 9.6.0 Portfile
comment:3 Changed 8 years ago by oleaamot (Ole Aamot)
I am the upstream author (ole@…) of this unstable 9.6.0 release of the GNOME Internet Radio Locator.
GNOME Internet Radio Locator plays Internet radio streams for 78 Internet Radio stations with gstreamer if you search for the station with the Search button and enter a city name in the input field.
Several Issues on Mac OS X 10.11.6:
It crashes on Mac OS X 10.11.6 if you press the "New" button in order to add new Internet Radio stations. It crashes on Mac OS X 10.11.6 with "Illegal instruction: 4" if you select the Internet radio station with the Stations selector.
The 9.6.0 version works perfectly without these issues on Fedora Linux Core 24.
comment:4 Changed 8 years ago by raimue (Rainer Müller)
I tried to build the Portfile, but the attached Portfile.9.6.0.diff has a trailing '.' at the version number and checksums are wrong as well. For Portfile-9.6.0-unstable, I don't know what the original revision is supposed to be, it does not apply to what is currently in git master. I am attaching what I used now.
With this, I can reproduce the crash when selecting a station and its cause on OS X 10.12:
$ otool -tV /opt/local/bin/girl | grep -C5 '^0*100012b8c' 0000000100012b79 movq %rax, %rdi 0000000100012b7c movq %r14, %rsi 0000000100012b7f callq 0x100013d0a ## symbol stub for: _g_object_get_data 0000000100012b84 movq %rax, %rdi 0000000100012b87 callq 0x100013e78 ## symbol stub for: _g_strdup 0000000100012b8c ud2 _on_new_station_changed: 0000000100012b8e pushq %rbp 0000000100012b8f movq %rsp, %rbp 0000000100012b92 pushq %r14 0000000100012b94 pushq %rbx
This is under the symbol _on_stations_selector_changed
and ud2
is the opcode specifically used to raise an illegal instruction exception. I cannot say why it ends up in your binary.
Changed 8 years ago by raimue (Rainer Müller)
Attachment: | 0001-girl-Update-to-version-9.6.0.patch added |
---|
comment:5 Changed 8 years ago by dbevans (David B. Evans)
Just noticed that version 9.7.0 was tagged yesterday in upstream git although the corresponding tarball has not appeared on the GNOME download site yet.
However in the interim girl has been updated to version 9.6.1 so attached is a new patch for testing.
Observations:
- dependencies have changed -- the port now uses a built in gstreamer010 based player rather than using totem at runtime
- the crash reported changing stations appears to be a clang optimization issue -- I was able to avoid it by building using -O0 (+debug variant).
- with -O0, on selecting WNYC from the station selector, the player window appears and plays that station correctly.
Here's the resulting debug output:
** Message: on_station_select_changed: WNYC ** Message: on_station_select_changed: New York City, NY ** Message: on_station_select_changed: 93.9FM ** Message: on_station_select_changed: WNYC 93.9 FM and AM 820 are New York's flagship public radio stations, broadcasting the finest programs from NPR, American Public Media, Public Radio International and the BBC World Service, as well as a wide range of award-winning local programming. ** Message: Selected the radio station WNYC in New York City, NY: http://fm939.wnyc.org/wnycfm ** Message: http://fm939.wnyc.org/wnycfm (girl:91816): GLib-WARNING **: In call to g_spawn_sync(), exit status of a child process was requested but ECHILD was received by waitpid(). Most likely the process is ignoring SIGCHLD, or some other thread is invoking waitpid() with a nonpositive first argument; either behavior can break applications that use g_spawn_sync either directly or indirectly. ** Message: Playing....
Probably should explicitly set a level of optimization between -O0 (none) and -Os (the MacPorts default which fails) that works for non-debug builds as well. Haven't had time to explore this issue as yet.
Changed 8 years ago by dbevans (David B. Evans)
Attachment: | girl-9.6.1.patch added |
---|
Update to girl 9.6.1, dependencies, disable optimization
comment:6 follow-up: 7 Changed 8 years ago by oleaamot (Ole Aamot)
GNOME Internet Radio Locator version 9.7.0 is now available from
https://download.gnome.org/sources/girl/9.7/girl-9.7.0.tar.xz
The new release contains a port of the inline player to gstreamer 1.0 by Dominique Leuenberger (GNOME Bugzilla #777397) and some of the Internet radio stations requires that the software encoder/decoder package gstreamer1-gst-plugins-ugly is installed for audio playback.
comment:7 follow-up: 8 Changed 8 years ago by dbevans (David B. Evans)
Replying to oleaamot:
GNOME Internet Radio Locator version 9.7.0 is now available from
https://download.gnome.org/sources/girl/9.7/girl-9.7.0.tar.xz
The new release contains a port of the inline player to gstreamer 1.0 by Dominique Leuenberger (GNOME Bugzilla #777397) and some of the Internet radio stations requires that the software encoder/decoder package gstreamer1-gst-plugins-ugly is installed for audio playback.
A few issues came up while testing this:
- girl-9.7.0.tar.xz is a snapshot of current git master not tag GIRL_9_7_0. This is GIRL_9_7_0 + 2 commits. You might want to retag as GIRL_9_7_1 and generate an appropriate snapshot in https://download.gnome.org/sources/girl/9.7
- am I right in understanding that the record functionality is also now based on gstreamer1 without using streamripper ?
comment:8 Changed 8 years ago by dbevans (David B. Evans)
Replying to dbevans:
Replying to oleaamot:
GNOME Internet Radio Locator version 9.7.0 is now available from
https://download.gnome.org/sources/girl/9.7/girl-9.7.0.tar.xz
The new release contains a port of the inline player to gstreamer 1.0 by Dominique Leuenberger (GNOME Bugzilla #777397) and some of the Internet radio stations requires that the software encoder/decoder package gstreamer1-gst-plugins-ugly is installed for audio playback.
A few issues came up while testing this:
- girl-9.7.0.tar.xz is a snapshot of current git master not tag GIRL_9_7_0. This is GIRL_9_7_0 + 2 commits. You might want to retag as GIRL_9_7_1 and generate an appropriate snapshot in https://download.gnome.org/sources/girl/9.7
- am I right in understanding that the record functionality is also now based on gstreamer1 without using streamripper ?
One more issue:
- data/girl.appdata.xml.in still refers to Totem and streamripper as do various .po files under po/ and help/
comment:9 Changed 8 years ago by oleaamot (Ole Aamot)
I have retagged GIRL_9_7_1 on git.gnome.org and published version 9.7.1 as https://download.gnome.org/sources/girl/9.7/girl-9.7.1.tar.xz
The record functionality has been removed and a message box asks for help with the implementation with gstreamer instead of streamripper if the "--with-recording" parameter is passed to the configure script.
I'll remove the old references to Totem and streamripper in data/girl.appdata.xml.in on git.gnome.org and translations in po/ and help/
I hope to commit these changes before the next major release.
comment:10 Changed 8 years ago by dbevans (David B. Evans)
Thanks for the quick turn around. Attached is my updated patch for 9.7.1.
Testing reveals:
- Any optimization setting greater than -O0 produces the previously reported crash when selecting a station
- After porting to gstreamer1 audio no longer plays when station is selected. Debug output shows
** Message: on_station_select_changed: http://fm939.wnyc.org/wnycfm ** Message: on_station_select_changed: WNYC ** Message: on_station_select_changed: New York City, NY ** Message: on_station_select_changed: 93.9FM ** Message: on_station_select_changed: WNYC 93.9 FM and AM 820 are New York's flagship public radio stations, broadcasting the finest programs from NPR, American Public Media, Public Radio International and the BBC World Service, as well as a wide range of award-winning local programming. ** Message: Selected the radio station WNYC in New York City, NY: http://fm939.wnyc.org/wnycfm ** Message: http://fm939.wnyc.org/wnycfm ** Message: Playing.... (girl:17339): GLib-WARNING **: In call to g_spawn_sync(), exit status of a child process was requested but ECHILD was received by waitpid(). Most likely the process is ignoring SIGCHLD, or some other thread is invoking waitpid() with a nonpositive first argument; either behavior can break applications that use g_spawn_sync either directly or indirectly. Message:Internal data stream error. (girl:17339): GStreamer-CRITICAL **: gst_mini_object_unref: assertion 'mini_object->refcount > 0' failed
I suspect that the internal data stream error is the issue. Will look into this further when I get a chance during the next day or so.
Changed 8 years ago by dbevans (David B. Evans)
Attachment: | girl-9.7.1.patch added |
---|
Update to girl 9.7.1 using gstreamer1, recording functionality removed, remove +record variant
comment:11 Changed 8 years ago by dbevans (David B. Evans)
The problem with WNYC is specific to that station. Most other stations play fine.
comment:12 Changed 8 years ago by dbevans (David B. Evans)
Owner: | set to dbevans |
---|---|
Resolution: | → fixed |
Status: | new → closed |
The Milestone field is for use by Macports team members only, please do not set it.
Comments on your patch:
# $Id$
line