pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pkg/48373: multimedia/phonon-backend-vlc problems with pulseaudio and audio cds



The following reply was made to PR pkg/48373; it has been noted by GNATS.

From: Nat Sloss <nathanialsloss%yahoo.com.au@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: 
Subject: Re: pkg/48373: multimedia/phonon-backend-vlc problems with pulseaudio 
and audio cds
Date: Tue, 12 Nov 2013 17:35:51 +1100

 Hi,
 
 I have patched phonon-backend-vlc these patches solve my problems mentioned 
 earlier in this PR.  However at this time I am not able to eject a cd using 
 kscd (did not work from the start) and I have to restart hald after changing 
 discs, so I am unable to test fully.
 
 Here are the patches:
 
 $NetBSD$
 
 # Fixes initial track selectoin before track has started.
 # Remembers track position when track is selected from list.
 # Fixes crash between hald restarts.
 
 --- src/mediaobject.cpp.orig   2013-11-04 16:49:24.000000000 +0000
 +++ src/mediaobject.cpp
 @@ -404,6 +404,7 @@ void MediaObject::setSource(const MediaS
          break;
      }
  
 +          setupMedia();
      debug() << "Sending currentSourceChanged";
      emit currentSourceChanged(m_mediaSource);
  }
 @@ -513,7 +514,7 @@ void MediaObject::setupMedia()
      DEBUG_BLOCK;
  
      unloadMedia();
 -    resetMembers();
 +    //resetMembers();
  
      // Create a media with the given MRL
      m_media = new Media(m_mrl, this);
 @@ -796,8 +797,8 @@ qint64 MediaObject::totalTime() const
  
  void MediaObject::addSink(SinkNode *node)
  {
 -    Q_ASSERT(!m_sinks.contains(node));
 -    m_sinks.append(node);
 +    if (!m_sinks.contains(node))
 +        m_sinks.append(node);
  }
  
  void MediaObject::removeSink(SinkNode *node)
 $NetBSD$
 
 #Stops recurring play when user has stopped audio cd.
 
 --- src/mediaplayer.cpp.orig   2013-11-04 16:49:24.000000000 +0000
 +++ src/mediaplayer.cpp
 @@ -332,10 +332,12 @@ void MediaPlayer::setVolumeInternal()
  
  void MediaPlayer::setCdTrack(int track)
  {
 +    libvlc_state_t currentVLCstate = libvlc_media_player_get_state(m_player);
      libvlc_media_player_stop(m_player);
      m_media->setCdTrack(track);
      libvlc_media_player_set_media(m_player, *m_media);
 -    libvlc_media_player_play(m_player);
 +    if (currentVLCstate != libvlc_Stopped)
 +        libvlc_media_player_play(m_player);
  }
  
  #if (LIBVLC_VERSION_INT >= LIBVLC_VERSION(2, 2, 0, 0))
 $NetBSD$
 
 #Required for NetBSD as vlc2 does not work with dbus.
 
 --- src/utils/libvlc.cpp.orig  2013-11-04 16:49:24.000000000 +0000
 +++ src/utils/libvlc.cpp
 @@ -94,9 +94,11 @@ bool LibVLC::init()
      // Do not preload services discovery modules, we don't use them.
      args << "--services-discovery=''";
      // Allow multiple starts (one gets to wonder whether that makes a 
 difference).
 +#if 0
  #if (LIBVLC_VERSION_INT > LIBVLC_VERSION(2, 1, 0, 0) && defined(Q_OS_MAC)) || 
 defined( Q_OS_WIN) || !defined(PHONON_NO_DBUS)
      args << "--no-one-instance";
  #endif
 +#endif
      args << "--no-audio";
      args << "--no-video";
  
 
 Regards
 
 Nat.
 


Home | Main Index | Thread Index | Old Index