diff options
-rw-r--r-- | multimedia/lives/lives.SlackBuild | 4 | ||||
-rw-r--r-- | multimedia/lives/lives.info | 6 | ||||
-rw-r--r-- | multimedia/lives/pulseaudio.patch | 231 |
3 files changed, 237 insertions, 4 deletions
diff --git a/multimedia/lives/lives.SlackBuild b/multimedia/lives/lives.SlackBuild index 4aba116a2c..fc56435155 100644 --- a/multimedia/lives/lives.SlackBuild +++ b/multimedia/lives/lives.SlackBuild @@ -27,7 +27,7 @@ PRGNAM=lives SRCNAM=LiVES -VERSION=${VERSION:-2.2.6} +VERSION=${VERSION:-2.2.8} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -73,6 +73,8 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; +patch -p0 < $CWD/pulseaudio.patch + # includes some multilib support CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ diff --git a/multimedia/lives/lives.info b/multimedia/lives/lives.info index 758b9b2c6b..39e9002d7f 100644 --- a/multimedia/lives/lives.info +++ b/multimedia/lives/lives.info @@ -1,8 +1,8 @@ PRGNAM="lives" -VERSION="2.2.6" +VERSION="2.2.8" HOMEPAGE="http://lives.sourceforge.net" -DOWNLOAD="http://www.xs4all.nl/~salsaman/lives/current/LiVES-2.2.6.tar.bz2" -MD5SUM="54e1043927d71282de9516df4a76c9cc" +DOWNLOAD="http://www.xs4all.nl/~salsaman/lives/current/LiVES-2.2.8.tar.bz2" +MD5SUM="8440e2a2b6e83655dfc39c9fef5ee903" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="jack2" diff --git a/multimedia/lives/pulseaudio.patch b/multimedia/lives/pulseaudio.patch new file mode 100644 index 0000000000..ff0a81aeb6 --- /dev/null +++ b/multimedia/lives/pulseaudio.patch @@ -0,0 +1,231 @@ +--- src/preferences.c.orig 2015-02-07 23:58:32.000000000 +0100 ++++ src/preferences.c 2015-02-22 21:04:58.229180250 +0100 +@@ -685,12 +685,6 @@ lives_toggle_button_get_active(LIVES_TOG + jack_rec_audio_to_clip(-1,-1,RECA_EXTERNAL); + } + } +- if (prefs->audio_player==AUD_PLAYER_PULSE) { +- if (prefs->perm_audio_reader) { +- // create reader connection now, if permanent +- pulse_rec_audio_to_clip(-1,-1,RECA_EXTERNAL); +- } +- } + } + + } +--- src/callbacks.c.orig 2015-02-08 15:17:58.000000000 +0100 ++++ src/callbacks.c 2015-02-22 21:13:44.839218263 +0100 +@@ -135,13 +135,6 @@ void lives_exit (void) { + mainw->current_file=-1; + + if (!mainw->only_close) { +-#ifdef HAVE_PULSE_AUDIO +- pthread_mutex_lock(&mainw->abuf_mutex); +- if (mainw->pulsed!=NULL) pulse_close_client(mainw->pulsed); +- if (mainw->pulsed_read!=NULL) pulse_close_client(mainw->pulsed_read); +- pulse_shutdown(); +- pthread_mutex_unlock(&mainw->abuf_mutex); +-#endif + #ifdef ENABLE_JACK + pthread_mutex_lock(&mainw->abuf_mutex); + lives_jack_end(); +@@ -1005,12 +998,6 @@ void on_stop_clicked (LiVESMenuItem *men + return; + } + #endif +-#ifdef HAVE_PULSE_AUDIO +- if (mainw->pulsed!=NULL&&mainw->pulsed_read!=NULL&&mainw->pulsed->in_use) { +- mainw->cancelled=CANCEL_KEEP; +- return; +- } +-#endif + + #ifndef IS_MINGW + com=g_strdup_printf("%s stopsubsubs \"%s\" 2>/dev/null",prefs->backend_sync,cfile->handle); +@@ -4016,20 +4003,6 @@ void on_record_perf_activate (LiVESMenuI + } + + #endif +-#ifdef HAVE_PULSE_AUDIO +- if (prefs->audio_player==AUD_PLAYER_PULSE) { +- if (mainw->agen_key==0&&!mainw->agen_needs_reinit) { +- pulse_rec_audio_to_clip(mainw->ascrap_file, -1, RECA_EXTERNAL); +- mainw->pulsed_read->in_use=TRUE; +- } +- else { +- if (mainw->pulsed!=NULL) { +- pulse_rec_audio_to_clip(mainw->ascrap_file, -1, RECA_GENERATED); +- mainw->pulsed_read->in_use=TRUE; +- } +- } +- } +-#endif + } + return; + } +@@ -4042,11 +4015,6 @@ void on_record_perf_activate (LiVESMenuI + jack_get_rec_avals(mainw->jackd); + } + #endif +-#ifdef HAVE_PULSE_AUDIO +- if (prefs->audio_player==AUD_PLAYER_PULSE&&mainw->pulsed!=NULL) { +- pulse_get_rec_avals(mainw->pulsed); +- } +-#endif + } + return; + } +@@ -7801,15 +7769,6 @@ void on_loop_cont_activate (LiVESMenuIte + else if (mainw->jackd!=NULL) mainw->jackd->loop=AUDIO_LOOP_NONE; + } + #endif +-#ifdef HAVE_PULSE_AUDIO +- if (prefs->audio_player==AUD_PLAYER_PULSE) { +- if (mainw->pulsed!=NULL&&(mainw->loop_cont||mainw->whentostop==NEVER_STOP)) { +- if (mainw->ping_pong&&prefs->audio_opts&AUDIO_OPTS_FOLLOW_FPS) mainw->pulsed->loop=AUDIO_LOOP_PINGPONG; +- else mainw->pulsed->loop=AUDIO_LOOP_FORWARD; +- } +- else if (mainw->pulsed!=NULL) mainw->pulsed->loop=AUDIO_LOOP_NONE; +- } +-#endif + + } + +@@ -7822,12 +7781,6 @@ void on_ping_pong_activate (LiVESMenuIte + else mainw->jackd->loop=AUDIO_LOOP_FORWARD; + } + #endif +-#ifdef HAVE_PULSE_AUDIO +- if (prefs->audio_player==AUD_PLAYER_PULSE&&mainw->pulsed!=NULL&&mainw->pulsed->loop!=AUDIO_LOOP_NONE) { +- if (mainw->ping_pong&&prefs->audio_opts&AUDIO_OPTS_FOLLOW_FPS) mainw->pulsed->loop=AUDIO_LOOP_PINGPONG; +- else mainw->pulsed->loop=AUDIO_LOOP_FORWARD; +- } +-#endif + } + + +@@ -7910,17 +7863,6 @@ void on_mute_activate (LiVESMenuItem *me + } + } + #endif +-#ifdef HAVE_PULSE_AUDIO +- if (prefs->audio_player==AUD_PLAYER_PULSE&&mainw->playing_file>-1&&mainw->pulsed!=NULL) { +- mainw->pulsed->mute=mainw->mute; +- if (mainw->pulsed->playing_file==mainw->current_file&&cfile->achans>0&&!mainw->is_rendering) { +- if (!pulse_audio_seek_bytes(mainw->pulsed, mainw->pulsed->seek_pos)) { +- if (pulse_try_reconnect()) pulse_audio_seek_bytes(mainw->pulsed,mainw->pulsed->seek_pos); +- } +- mainw->pulsed->in_use=TRUE; +- } +- } +-#endif + } + + +@@ -9287,11 +9229,6 @@ boolean config_event (LiVESWidget *widge + jack_driver_activate(mainw->jackd); + } + #endif +-#ifdef HAVE_PULSE_AUDIO +- if (mainw->pulsed!=NULL) { +- pulse_driver_activate(mainw->pulsed); +- } +-#endif + } + mainw->is_ready=TRUE; + if (palette->style&STYLE_1) widget_opts.apply_theme=TRUE; +@@ -9406,8 +9343,7 @@ void on_effects_paused (LiVESButton *but + d_print(_ ("paused...")); + } + #ifdef RT_AUDIO +- if ((mainw->jackd!=NULL&&mainw->jackd_read!=NULL&&mainw->jackd_read->in_use) +- ||(mainw->pulsed!=NULL&&mainw->pulsed_read!=NULL&&mainw->pulsed_read->in_use)) ++ if ((mainw->jackd!=NULL&&mainw->jackd_read!=NULL&&mainw->jackd_read->in_use)) + lives_widget_hide(cfile->proc_ptr->stop_button); + #endif + } else { +@@ -9421,16 +9357,14 @@ void on_effects_paused (LiVESButton *but + d_print(_ ("resumed...")); + } + #ifdef RT_AUDIO +- if ((mainw->jackd!=NULL&&mainw->jackd_read!=NULL&&mainw->jackd_read->in_use) +- ||(mainw->pulsed!=NULL&&mainw->pulsed_read!=NULL&&mainw->pulsed_read->in_use)) ++ if ((mainw->jackd!=NULL&&mainw->jackd_read!=NULL&&mainw->jackd_read->in_use)) + lives_widget_show(cfile->proc_ptr->stop_button); + #endif + } + + if (!cfile->opening&&!mainw->internal_messaging + #ifdef RT_AUDIO +- &&!((mainw->jackd!=NULL&&mainw->jackd_read!=NULL&&mainw->jackd_read->in_use) +- ||(mainw->pulsed!=NULL&&mainw->pulsed_read!=NULL&&mainw->pulsed->in_use)) ++ &&!((mainw->jackd!=NULL&&mainw->jackd_read!=NULL&&mainw->jackd_read->in_use)) + #endif + ) { + lives_system(com,FALSE); +@@ -9709,19 +9643,6 @@ void changed_fps_during_pb (LiVESSpinBut + } + } + #endif +- +-#ifdef HAVE_PULSE_AUDIO +- if (prefs->audio_player==AUD_PLAYER_PULSE&&mainw->pulsed!=NULL&&mainw->pulsed->playing_file==mainw->current_file&& +- !(mainw->record&&!mainw->record_paused&&prefs->audio_src==AUDIO_SRC_EXT)) { +- +- mainw->pulsed->in_arate=cfile->arate*cfile->pb_fps/cfile->fps; +- if (mainw->agen_key==0&&!mainw->agen_needs_reinit&&!has_audio_filters(AF_TYPE_NONA)) { +- mainw->rec_aclip=mainw->current_file; +- mainw->rec_avel=cfile->pb_fps/cfile->fps; +- mainw->rec_aseek=(double)mainw->pulsed->seek_pos/(double)(cfile->arate*cfile->achans*cfile->asampsize/8); +- } +- } +-#endif + } + + if (cfile->play_paused) { +@@ -10234,14 +10155,6 @@ boolean freeze_callback (LiVESAccelGroup + if (cfile->play_paused) jack_pb_stop(); + else jack_pb_start(); + #endif +-#ifdef HAVE_PULSE_AUDIO +- if (mainw->pulsed!=NULL&&prefs->audio_player==AUD_PLAYER_PULSE&&prefs->audio_opts&AUDIO_OPTS_FOLLOW_FPS) { +- if (!cfile->play_paused&&mainw->pulsed!=NULL&&mainw->pulsed->playing_file==mainw->current_file) { +- mainw->pulsed->in_arate=cfile->arate*cfile->pb_fps/cfile->fps; +- } +- mainw->pulsed->is_paused=cfile->play_paused; +- } +-#endif + + return TRUE; + } +@@ -10274,17 +10187,6 @@ boolean show_sync_callback (LiVESAccelGr + #endif + } + +- if (prefs->audio_player==AUD_PLAYER_PULSE) { +-#ifdef HAVE_PULSE_AUDIO +- if (mainw->pulsed!=NULL&&mainw->pulsed->in_use) avsync=(double)mainw->pulsed->seek_pos/ +- cfile->arate/cfile->achans/cfile->asampsize*8; +- else return FALSE; +-#else +- return FALSE; +-#endif +- } +- else return FALSE; +- + avsync-=(mainw->actual_frame-1.)/cfile->fps; + + msg=g_strdup_printf(_("Audio is ahead of video by %.4f secs. at frame %d, with fps %.4f\n"), +@@ -11518,12 +11420,6 @@ void on_recaudclip_ok_clicked (LiVESButt + mainw->jackd_read->in_use=TRUE; + } + #endif +-#ifdef HAVE_PULSE_AUDIO +- if (prefs->audio_player==AUD_PLAYER_PULSE) { +- pulse_rec_audio_to_clip(mainw->current_file,old_file,type==0?RECA_NEW_CLIP:RECA_EXISTING); +- mainw->pulsed_read->in_use=TRUE; +- } +-#endif + + if (type==1) { + // set these again, as playsel may have reset them |