arfbtwn / banshee Goto Github PK
View Code? Open in Web Editor NEWThis project forked from dineshkummarc/banshee
Home Page: http://banshee.fm/
License: MIT License
This project forked from dineshkummarc/banshee
Home Page: http://banshee.fm/
License: MIT License
It would be nice to have some kind of CI (Travis CI, AppVeyor, ...).
I might take a look at the Linux side. Didn't try to compile Banshee on Windows yet...
After Banshee closes we sometimes see this stack trace:
Unhandled Exception:
System.NullReferenceException: Object reference not set to an instance of an object
at Migo.TaskCore.TaskGroup`1[T].PumpQueue () [0x00015] in /tmp/portage/media-sound/banshee-9999/work/banshee-9999/src/Libraries/Migo/Migo.TaskCore/TaskGroup.cs:766
at System.Threading.ThreadHelper.ThreadStart_Context (System.Object state) [0x00014] in /var/tmp/portage/dev-lang/mono-5.2.0.196/work/mono-5.2.0.196-abi_x86_64.amd64/mcs/class/referencesource/mscorlib/system/threading/thread.cs:68
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00071] in /var/tmp/portage/dev-lang/mono-5.2.0.196/work/mono-5.2.0.196-abi_x86_64.amd64/mcs/class/referencesource/mscorlib/system/threading/executioncontext.cs:957
at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in /var/tmp/portage/dev-lang/mono-5.2.0.196/work/mono-5.2.0.196-abi_x86_64.amd64/mcs/class/referencesource/mscorlib/system/threading/executioncontext.cs:904
at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state) [0x0002b] in /var/tmp/portage/dev-lang/mono-5.2.0.196/work/mono-5.2.0.196-abi_x86_64.amd64/mcs/class/referencesource/mscorlib/system/threading/executioncontext.cs:893
at System.Threading.ThreadHelper.ThreadStart () [0x00008] in /var/tmp/portage/dev-lang/mono-5.2.0.196/work/mono-5.2.0.196-abi_x86_64.amd64/mcs/class/referencesource/mscorlib/system/threading/thread.cs:105
[ERROR] FATAL UNHANDLED EXCEPTION: System.NullReferenceException: Object reference not set to an instance of an object
at Migo.TaskCore.TaskGroup`1[T].PumpQueue () [0x00015] in /tmp/portage/media-sound/banshee-9999/work/banshee-9999/src/Libraries/Migo/Migo.TaskCore/TaskGroup.cs:766
at System.Threading.ThreadHelper.ThreadStart_Context (System.Object state) [0x00014] in /var/tmp/portage/dev-lang/mono-5.2.0.196/work/mono-5.2.0.196-abi_x86_64.amd64/mcs/class/referencesource/mscorlib/system/threading/thread.cs:68
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00071] in /var/tmp/portage/dev-lang/mono-5.2.0.196/work/mono-5.2.0.196-abi_x86_64.amd64/mcs/class/referencesource/mscorlib/system/threading/executioncontext.cs:957
at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx) [0x00000] in /var/tmp/portage/dev-lang/mono-5.2.0.196/work/mono-5.2.0.196-abi_x86_64.amd64/mcs/class/referencesource/mscorlib/system/threading/executioncontext.cs:904
at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state) [0x0002b] in /var/tmp/portage/dev-lang/mono-5.2.0.196/work/mono-5.2.0.196-abi_x86_64.amd64/mcs/class/referencesource/mscorlib/system/threading/executioncontext.cs:893
at System.Threading.ThreadHelper.ThreadStart () [0x00008] in /var/tmp/portage/dev-lang/mono-5.2.0.196/work/mono-5.2.0.196-abi_x86_64.amd64/mcs/class/referencesource/mscorlib/system/threading/thread.cs:105
Currently no message whatsoever is shown when the GStreamer backend isn't able to play the file.
Ref #3
Hi,
I run
./configure --disable-gst_sharp --enable-gst-native --disable-docs --disable-scrollkeeper --disable-user-help --disable-youtube --disable-gio-hardware
Effect:
banshee-2.9.2
Build Environment
Install Prefix: /usr
Datadir: /usr/local/share
Libdir: /usr/local/lib
C Compiler: /bin/bash /home/m/Pulpit/ban/build/m4/shave/shave cc gcc
Mono C# Compiler: /bin/bash /home/m/Pulpit/ban/build/m4/shave/shave mcs /usr/bin/mcs
Mono Runtime: /usr/bin/mono
Gtk#: 2.99.3
Media/Graphics:
GStreamer# backend: no
GStreamer C backend: yes
Clutter: no
Operating System/Desktop Environment:
GNOME Support: yes
OSX Support: no
Digital Audio Player (DAP) Support:
Apple Device: yes (libgpod-sharp)
Karma: no
Mass Storage: yes
MTP: yes
Extra Features:
Web Browser: no (webkitgtk-3.0 >= 1.2.2, libsoup-2.4 >= 2.42)
DAAP: yes
GIO Backend: yes (gio-sharp >= 2.99)
GIO Hardware: no (gudev-sharp >= 3.0)
YouTube: no (gdata-sharp >= 1.4)
Sound Menu: no
Ubuntu One Store: no (ubuntuone-sharp >= 0.9.2)
UPnP: no (mono-upnp >= 0.1)
Boo Scripting: no (boo >= 0.8.1)
Build/Development:
Unit Tests: yes (nunit >= 2.5)
API Docs: no (monodocer and mdassembler)
User Help: no (gnome-doc-utils >= 0.17.3)
Release Build: no
Vendor Build ID: git-checkout
then:
make and get this:
Making all in Hyena.Gui
MCS ../../../bin/Hyena.Gui.dll
./Hyena.Data.Gui/Accessibility/ColumnCellAccessible.cs(82,22): warning CS0108: `Hyena.Data.Gui.Accessibility.ColumnCellAccessible.Layer' hides inherited member `Atk.Object.Layer'. Use the new keyword if hiding was intended
/usr/lib/pkgconfig/../../lib/cli/atk-sharp-3.0/atk-sharp.dll (Location of the symbol related to previous warning)
./Hyena.Data.Gui/Accessibility/ColumnCellAccessible.cs(87,20): warning CS0108: `Hyena.Data.Gui.Accessibility.ColumnCellAccessible.MdiZorder' hides inherited member `Atk.Object.MdiZorder'. Use the new keyword if hiding was intended
/usr/lib/pkgconfig/../../lib/cli/atk-sharp-3.0/atk-sharp.dll (Location of the symbol related to previous warning)
./Hyena.Gui/BaseWidgetAccessible.cs(59,26): warning CS0108: `Hyena.Gui.BaseWidgetAccessible.Layer' hides inherited member `Atk.Object.Layer'. Use the new keyword if hiding was intended
/usr/lib/pkgconfig/../../lib/cli/atk-sharp-3.0/atk-sharp.dll (Location of the symbol related to previous warning)
./Hyena.Gui/BaseWidgetAccessible.cs(262,20): warning CS0108: `Hyena.Gui.BaseWidgetAccessible.MdiZorder' hides inherited member `Atk.Object.MdiZorder'. Use the new keyword if hiding was intended
/usr/lib/pkgconfig/../../lib/cli/atk-sharp-3.0/atk-sharp.dll (Location of the symbol related to previous warning)
./Hyena.Widgets/RatingEntry.cs(413,26): error CS0234: The type or namespace name `ValueChangedHandler' does not exist in the namespace `Atk'. Are you missing an assembly reference?
./Hyena.Widgets/RatingEntry.cs(433,20): error CS0234: The type or namespace name `Range' does not exist in the namespace `Atk'. Are you missing an assembly reference?
Compilation failed: 2 error(s), 4 warnings
Makefile:1143: polecenia dla obiektu '../../../bin/Hyena.Gui.dll' nie powiodły się
make[4]: *** [../../../bin/Hyena.Gui.dll] Błąd 1
Makefile:567: polecenia dla obiektu 'all-recursive' nie powiodły się
make[3]: *** [all-recursive] Błąd 1
Makefile:548: polecenia dla obiektu 'all-recursive' nie powiodły się
make[2]: *** [all-recursive] Błąd 1
Makefile:641: polecenia dla obiektu 'all-recursive' nie powiodły się
make[1]: *** [all-recursive] Błąd 1
Makefile:569: polecenia dla obiektu 'all' nie powiodły się
make: *** [all] Błąd 2
The gstreamer-sharp binding library is more or less unmaintained (last commit in Arpil 2016).
Additionally it isn't shipped with any large distro.
Since we have our own binding + native library I'd suggest to remove the Banshee.GStreamerSharp
backend.
I didn't investigate what causes the crash. I tried it with H264 MKV files and the native GStreamer backend.
Suggestion:
Since there are some pretty good cross-platform video players (e.g. VLC) I'd say the video playback feature could be dropped to simplify the codebase a bit.
Before getting to #76 (comment) I got this error, only when using --disable-mtp in configuration
checking for sed... /usr/sbin/sed
checking that generated files are newer than configure... done
configure: error: conditional "LIBMTP_SIZEOF_TIME_T_64" was never defined.
Usually this means the macro was only invoked conditionally.
==> ERROR: A failure occurred in build().
Banshee/podcast show "network error" when try to check https feed for new episodes
After or while viewing video in fullscreen mode (from the NowPlaying extension) and changing window with the GNOME 3 activities view or Alt + Tab, the next time Alt + Tab or the activities view is used the Banshee window is hidden.
Appears to be due to the parent-active signal that the fullscreen window listens for.
Also - a visual artefact, when using gnome's activities view the video rendering window isn't reparented back into the main player window and the fullscreen window is hidden although this may only be an issue on the feature/lite branch where the NowPlaying extension has been refactored.
The TreeView resets its scrolling to row 1 on most track changes. This doesn't happen on every change, occasionally the view scrolls correctly to the selection. Appears to be a side effect of the model reload performed when track details are synchronised to disc.
Both the default media player controller (a screenlet, which is basically a system indicator) and kde connect although detecting banshee and album art and other info is displayed and the ability to to to next and previous song, are unable to signal banshee to play/pause.
please ask any more information / debug procedures
This error is reported other places on the internet, too.
./Hyena.Widgets/RatingEntry.cs(409,18): error CS0535: Hyena.Widgets.RatingAccessible' does not implement interface member
Atk.IValue.GetValueAndText(out double, out string)'
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-3.0/atk-sharp.dll (Location of the symbol related to previous error)
./Hyena.Widgets/RatingEntry.cs(409,18): error CS0535: Hyena.Widgets.RatingAccessible' does not implement interface member
Atk.IValueImplementor.GetValueAndText(out double, out string)'
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-3.0/atk-sharp.dll (Location of the symbol related to previous error)
I'll record a trace next time it happens but occasionally the player crashes when requesting the next track with gapless mode enabled times out, a similar log message is printed in this scenario.
EDIT: no trace, program freezes on the above message.
MTP devices take a ridiculously long time to connect to Banshee, an alternative would be a networked sync source but we'd need application support on the target device for metadata and that limits us to Android and iOS (if we can find someone to write the application) but the extra functionality and speed may be worth it.
Bluetooth is supported through a community extension [1] but it's too slow, the connection is quite error prone and didn't support discovery, WIFI might be a better alternative to solve these problems.
Banshee should optionally use Tracker
Once upon a time this was Monodevelop but since it looks like there's no development going on and it doesn't support the 15.x build tools it's probably time for a change of recommendation.
The recommended IDE should be Free Software but alternative suggestions are welcome.
when switching from banshee old ui to media panel and you have selected an artist for example, media panel only displays that artist as all of your library
all my library has built in each flac file the coresponding image of the album art ut banshee seems to just redownload it and thus misses a few
as title ./configure --disable-shave && MCS_FLAGS=-langversion:4 make
should fail at the new Notifications project that uses some C#6 syntax.
This feature may be needed by users with older compilers that don't support the later language features by default.
We should get this over with.
The filter widgets are empty at program start and need toggling for items to show.
The browsers were useful components but took up far too much screen real estate and were removed for the lighter TreeView
interface, we need to replace the view components with smaller ones and adapt it the regular GTK approach.
Segmentation fault when plugging in an HDMI cable with libbanshee.
Could someone confirm?
As anyone who has had a patch reviewed on bugzilla.gnome.org will know, there are some contribution guidelines for Banshee (and GNOME projects in general) but this information is tucked away in various places [1,2] and some can cause surprise to casual GitHub users as the flow is a bit different including an (AFAIK) unwritten rule against merges.
We should make sure the guidelines are presented to avoid surprise when reviewing pull requests.
[1] http://banshee.fm/contribute/write-code/
[2] https://wiki.gnome.org/Git/CommitMessages
I have a samba share auto connecting on my music folder and basically have 2 versions for my music
-> high quality opus for my laptop as it has a small ssd that are encoded from
-> flacs
I would like to be able to have the config / db folder on the same folder for when I am in my home vs when I am outside so I don't have to rescan my library every time.
It seems the Banshee homepage banshee.fm isn't online anymore. The DNS records aren't set anymore.
As a consequence the online media features don't work anymore (Amazon, Miro Guide).
There is the ability to set cover art from the user interface per album/track, the scheduled job will execute from time-to-time but a user can't trigger it from the user interface, instead an environment variable is read on service startup but that's not particularly user friendly.
We should consider adding a UI action to refresh cover art.
on the new interface banshee icon -> view -> media panel, results in a crash with a segfault.
Partially mitigated by the Claim button and PotentialSource
(some bug fixes to come for this) so the user has to kick off the long running connect operation himself, it still seems that the actual connection operation takes an unusually long period of time - this is prior to the call to get the object list from the device at MtpDevice.Connect(RawMtpDevice)
and if you do not have the notification icon you cannot close with without killing the pid :P
Pressing Ctrl
and scrolling results only in zoom out events. Relevant code:
The problem is caused by recent Gtk libs sending scoll events with GDK_SCROLL_SMOOTH
instead of _UP/_DOWN
. Normally this would be fine since the deltaY
value of the event would specify the direction. In our case gtk-sharp
unfortunatly just doesn't expose this field, so there is just no sane way to handle smooth scrolling.
As far as I undestand the Gtk code, there isn't a way to disable smooth scrolling on a per-widget base.
Proposal: Until we find a way to upgrade to a newer gtk-sharp
lib (e.g https://github.com/openmedicus/gtk-sharp) remove the scroll handling and add zoom button to the navigation bar.
Not sure if it's my database but no tracks seem to be processed when updating cover art, this may have been done by the RhapsodyMetadataProvider
that no longer works, upstream moved to napster.com?
Looks like we could consider integrating with another service to restore functionality but we'd need to get a developer key and figure out how to securely distribute that.
It would be cool to have music cover art or a video thumbnail displayed inline in the track list.
from @nicman23's comment on #50:
can you please fix some compiling errors when compiling with gtk2 and gtk3 libs in system ie:
MCS ../../../bin/Banshee.Dap.AppleDevice.dll
error CS1703: An assembly `atk-sharp' with the same identity has already been imported. Consider removing one of the references
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-2.0/atk-sharp.dll (Location of the symbol related to previous error)
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-3.0/atk-sharp.dll (Location of the symbol related to previous error)
error CS1703: An assembly `gdk-sharp' with the same identity has already been imported. Consider removing one of the references
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-2.0/gdk-sharp.dll (Location of the symbol related to previous error)
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-3.0/gdk-sharp.dll (Location of the symbol related to previous error)
error CS1703: An assembly `glib-sharp' with the same identity has already been imported. Consider removing one of the references
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-2.0/glib-sharp.dll (Location of the symbol related to previous error)
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-3.0/glib-sharp.dll (Location of the symbol related to previous error)
error CS1703: An assembly `gtk-sharp' with the same identity has already been imported. Consider removing one of the references
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-2.0/gtk-sharp.dll (Location of the symbol related to previous error)
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-3.0/gtk-sharp.dll (Location of the symbol related to previous error)
error CS1703: An assembly `pango-sharp' with the same identity has already been imported. Consider removing one of the references
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-2.0/pango-sharp.dll (Location of the symbol related to previous error)
/usr/lib/pkgconfig/../../lib/mono/gtk-sharp-3.0/pango-sharp.dll (Location of the symbol related to previous error)
When switching from a podcast view with many items to one with only one or two, hovering the empty area retains the tool tip from any items that would have had them in that space.
Looks like it's caused by the ListView's ViewLayout not invaliding child items correctly or not checking that they're visible before choosing to display the tool tip.
Since b2fcbae git isn't happy with the line endings after a fresh clone.
> git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: help/es/es.po
modified: tests/data/amz/decrypted.amz
modified: tests/data/xspf/xspf-1_0.2.xsd
no changes added to commit (use "git add" and/or "git commit -a")
core.autocrlf
is set to input
.
May be broken according to this log message:
Unable to Inhibit GNOME screensaver; probably running >= 2.91.91 gnome-screensaver which removed this API - org.freedesktop.DBus.Error.UnknownMethod: No such method 'Inhibit'
The adapter setup used in TreeView
replaces the text column renderer with the regular GTK text cell renderer but for TimeSpan
structures the display isn't humanised - we need to tweak the binder/adapter to provide the same fuzzy formatting as is seen with the ListView
.
Hello,
Just came across banshee. So far it looks pretty good. Is is still being developed? The reason I ask is that it has been quite a long time since it was released?
Thanks,
At startup we often see this exception:
Caught an exception - System.NullReferenceException: Object reference not set to an instance of an object (in `System.Core')
at System.Collections.Generic.HashSet`1[T].AddIfNotPresent (T value) [0x000a3] in <76a2606033cd4592ae6be99b8b13acca>:0
at System.Collections.Generic.HashSet`1[T].Add (T item) [0x00000] in <76a2606033cd4592ae6be99b8b13acca>:0
at Hyena.Data.Sqlite.SqliteUtils.ToDbFormat (System.Type type, System.Object value) [0x00138] in <bad1ee9db8ec4674a7d7e2d826888cc6>:0
at Hyena.Data.Sqlite.AbstractDatabaseColumn.GetValue (System.Object target) [0x00009] in <bad1ee9db8ec4674a7d7e2d826888cc6>:0
at Hyena.Data.Sqlite.SqliteModelProvider`1[T].GetUpdateParams (T target) [0x00042] in <bad1ee9db8ec4674a7d7e2d826888cc6>:0
at Hyena.Data.Sqlite.SqliteModelProvider`1[T].Update (T target) [0x0000d] in <bad1ee9db8ec4674a7d7e2d826888cc6>:0
at Hyena.Data.Sqlite.SqliteModelProvider`1[T].Save (T target, System.Boolean force_insert) [0x00026] in <bad1ee9db8ec4674a7d7e2d826888cc6>:0
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.