./vorbis-tools r41: 1.2.0-6
Clint Adams
schizo at debian.org
Sat Feb 28 15:27:50 UTC 2009
------------------------------------------------------------
revno: 41
committer: Clint Adams <schizo at debian.org>
branch nick: vorbis-tools
timestamp: Sat 2009-02-28 10:27:50 -0500
message:
1.2.0-6
modified:
debian/changelog
debian/control
debian/patches/series
debian/patches/upstream_r14957-ogg123_stop_decode_on_closed_buffer.diff
debian/patches/upstream_r14982-ogg123_man_page_http_only.diff
-------------- next part --------------
=== modified file 'debian/changelog'
--- a/debian/changelog 2008-05-31 14:29:15 +0000
+++ b/debian/changelog 2009-02-28 15:27:50 +0000
@@ -1,3 +1,18 @@
+vorbis-tools (1.2.0-6) unstable; urgency=low
+
+ * Remove myself from Uploaders.
+
+ -- Clint Adams <schizo at debian.org> Sat, 28 Feb 2009 10:19:27 -0500
+
+vorbis-tools (1.2.0-5) unstable; urgency=low
+
+ * Bump to Standards-Version 3.8.0.
+ * Refresh upstream_r14957-ogg123_stop_decode_on_closed_buffer.diff and
+ upstream_r14982-ogg123_man_page_http_only.diff to -p ab.
+ closes: #484961.
+
+ -- Clint Adams <schizo at debian.org> Mon, 09 Jun 2008 21:04:10 -0400
+
vorbis-tools (1.2.0-4) unstable; urgency=medium
* Add upstream_r14957-ogg123_stop_decode_on_closed_buffer.diff.
=== modified file 'debian/control'
--- a/debian/control 2008-05-22 23:51:34 +0000
+++ b/debian/control 2009-02-28 15:27:50 +0000
@@ -2,9 +2,9 @@
Section: sound
Priority: optional
Maintainer: Debian Xiph.org Maintainers <pkg-xiph-maint at lists.alioth.debian.org>
-Uploaders: Adeodato Sim? <dato at net.com.org.es>, Clint Adams <schizo at debian.org>
+Uploaders: Adeodato Sim? <dato at net.com.org.es>
Build-Depends: autotools-dev, debhelper, quilt, libcurl4-gnutls-dev, libao-dev, libogg-dev, libflac-dev (>> 1.1.4) | liboggflac-dev, libspeex-dev, libvorbis-dev
-Standards-Version: 3.7.3
+Standards-Version: 3.8.0
Vcs-Bzr: http://bzr.debian.org/bzr/pkg-xiph/vorbis-tools
Package: vorbis-tools
=== modified file 'debian/patches/series'
--- a/debian/patches/series 2008-05-31 14:34:10 +0000
+++ b/debian/patches/series 2009-02-28 15:27:50 +0000
@@ -1,6 +1,6 @@
upstream_r14728-speex_format_validation.diff
-upstream_r14957-ogg123_stop_decode_on_closed_buffer.diff -p3
-upstream_r14982-ogg123_man_page_http_only.diff -p3
+upstream_r14957-ogg123_stop_decode_on_closed_buffer.diff
+upstream_r14982-ogg123_man_page_http_only.diff
for_upstream-manpage_typos.diff
no_debian_subdir.diff
no_fast-math.diff
=== modified file 'debian/patches/upstream_r14957-ogg123_stop_decode_on_closed_buffer.diff'
--- a/debian/patches/upstream_r14957-ogg123_stop_decode_on_closed_buffer.diff 2008-05-31 14:25:27 +0000
+++ b/debian/patches/upstream_r14957-ogg123_stop_decode_on_closed_buffer.diff 2009-02-28 15:27:50 +0000
@@ -1,242 +1,281 @@
-Index: /trunk/vorbis-tools/ogg123/ogg123.c
-===================================================================
---- /trunk/vorbis-tools/ogg123/ogg123.c (revision 14207)
-+++ /trunk/vorbis-tools/ogg123/ogg123.c (revision 14957)
-@@ -240,8 +240,8 @@
-
- options->seekmode = DECODER_SEEK_NONE;
--
-+
- return 1;
- }
--
-+
- /* This function selects which statistics to display for our
- particular configuration. This does not have anything to do with
-@@ -272,5 +272,5 @@
- }
- free(data_source_stats);
--
-+
- /* Assume we need total time display, and let display_statistics()
- determine at what point it should be turned off during playback */
-@@ -295,5 +295,5 @@
-
- if (options.remote) {
--
-+
- /* Display statistics via the remote interface */
- remote_time(pstats_arg->decoder_statistics->current_time,
-@@ -302,5 +302,5 @@
-
- } else {
--
-+
- /* Disable/Enable statistics as needed */
-
-@@ -448,6 +448,6 @@
- print_audio_devices_info(options.devices);
-
--
-- /* Setup buffer */
-+
-+ /* Setup buffer */
- if (options.buffer_size > 0) {
- /* Keep sample size alignment for surround sound with up to 10 channels */
-@@ -474,5 +474,4 @@
-
- if (options.remote) {
--
- /* run the mainloop for the remote interface */
- remote_mainloop();
-@@ -484,7 +483,7 @@
- if (options.shuffle) {
- int i;
--
-+
- srandom(time(NULL));
--
-+
- for (i = 0; i < items; i++) {
- int j = i + random() % (items - i);
-@@ -569,5 +568,5 @@
- return;
- }
--
-+
- if ( (decoder = format->init(source, &options, &new_audio_fmt,
- &decoder_callbacks,
-@@ -587,5 +586,5 @@
- /* Start the audio playback thread before we begin sending data */
- if (audio_buffer != NULL) {
--
-+
- /* First reset mutexes and other synchronization variables */
- buffer_reset (audio_buffer);
-@@ -615,9 +614,9 @@
- /* Main loop: Iterates over all of the logical bitstreams in the file */
- while (!eof && !sig_request.exit) {
--
-+
- /* Loop through data within a logical bitstream */
- eos = 0;
- while (!eos && !sig_request.exit) {
--
-+
- /* Check signals */
- if (sig_request.skipfile) {
-@@ -665,5 +664,4 @@
- }
-
--
- /* Check to see if the audio format has changed */
- if (!audio_format_equal(&new_audio_fmt, &old_audio_fmt)) {
-@@ -683,5 +681,5 @@
- audio_reopen_action(NULL, reopen_arg);
- }
--
-+
-
- /* Update statistics display if needed */
-@@ -703,9 +701,13 @@
-
- if (nthc-- == 0) {
-- if (audio_buffer)
-- buffer_submit_data(audio_buffer, convbuffer, ret);
-- else
-+ if (audio_buffer) {
-+ if (!buffer_submit_data(audio_buffer, convbuffer, ret)) {
-+ status_error(_("Error: buffer write failed.\n"));
-+ eof = eos = 1;
-+ break;
-+ }
-+ } else
- audio_play_callback(convbuffer, ret, eos, &audio_play_arg);
--
-+
- nthc = options.nth - 1;
- }
-@@ -715,13 +717,13 @@
-
- ntimesc = 0;
--
-+
- } /* End of data loop */
--
-+
- } /* End of logical bitstream loop */
--
-+
- /* Done playing this logical bitstream. Clean up house. */
-
- if (audio_buffer) {
--
-+
- if (!sig_request.exit && !sig_request.skipfile) {
- buffer_mark_eos(audio_buffer);
-@@ -734,6 +736,5 @@
- /* Print final stats */
- display_statistics_quick(stat_format, audio_buffer, source, decoder);
--
--
-+
- format->cleanup(decoder);
- transport->close(source);
-@@ -741,5 +742,5 @@
-
- status_message(1, _("Done."));
--
-+
- if (sig_request.exit)
- exit (exit_status);
-@@ -749,5 +750,5 @@
- void exit_cleanup ()
- {
--
-+
- if (audio_buffer != NULL) {
- buffer_destroy (audio_buffer);
-Index: /trunk/vorbis-tools/ogg123/buffer.c
-===================================================================
---- /trunk/vorbis-tools/ogg123/buffer.c (revision 14422)
-+++ /trunk/vorbis-tools/ogg123/buffer.c (revision 14957)
-@@ -208,5 +208,5 @@
- /* This test is safe since curfill will never decrease and eos will
- never be unset. */
-- while ( !(buf->eos && buf->curfill == 0)) {
-+ while ( !(buf->eos && buf->curfill == 0) && !buf->abort_write) {
-
- if (buf->cancel_flag || sig_request.cancel)
-@@ -252,4 +252,9 @@
- buf->write_arg);
-
-+ if (!write_amount) {
-+ DEBUG("Error writing to the audio device. Aborting.");
-+ buffer_abort_write(buf);
-+ }
-+
- LOCK_MUTEX(buf->mutex);
-
-@@ -279,5 +284,5 @@
-
-
--void submit_data_chunk (buf_t *buf, char *data, size_t size)
-+int submit_data_chunk (buf_t *buf, char *data, size_t size)
- {
- long buf_write_pos; /* offset of first available write location */
-@@ -342,4 +347,5 @@
-
- DEBUG("Exit submit_data_chunk");
-+ return !buf->abort_write;
- }
-
-@@ -516,6 +522,6 @@
- /* --- Data buffering functions --- */
-
--void buffer_submit_data (buf_t *buf, char *data, long nbytes) {
-- submit_data_chunk (buf, data, nbytes);
-+int buffer_submit_data (buf_t *buf, char *data, long nbytes) {
-+ return submit_data_chunk (buf, data, nbytes);
- }
-
-@@ -747,5 +753,5 @@
-
- LOCK_MUTEX(buf->mutex);
-- while (!empty) {
-+ while (!empty && !buf->abort_write) {
-
- if (buf->curfill > 0) {
-Index: /trunk/vorbis-tools/ogg123/buffer.h
-===================================================================
---- /trunk/vorbis-tools/ogg123/buffer.h (revision 8422)
-+++ /trunk/vorbis-tools/ogg123/buffer.h (revision 14957)
-@@ -111,5 +111,5 @@
-
- /* --- Data buffering functions --- */
--void buffer_submit_data (buf_t *buf, char *data, long nbytes);
-+int buffer_submit_data (buf_t *buf, char *data, long nbytes);
- size_t buffer_get_data (buf_t *buf, char *data, long nbytes);
-
-Index: /trunk/vorbis-tools/ogg123/http_transport.c
-===================================================================
---- /trunk/vorbis-tools/ogg123/http_transport.c (revision 14516)
-+++ /trunk/vorbis-tools/ogg123/http_transport.c (revision 14957)
-@@ -69,5 +69,6 @@
- return 0;
-
-- buffer_submit_data(myarg->buf, ptr, size*nmemb);
-+ if (!buffer_submit_data(myarg->buf, ptr, size*nmemb))
-+ return 0;
-
- if (myarg->cancel_flag || sig_request.cancel)
-Index: /trunk/vorbis-tools/CHANGES
-===================================================================
---- /trunk/vorbis-tools/CHANGES (revision 14933)
-+++ /trunk/vorbis-tools/CHANGES (revision 14957)
-@@ -4,4 +4,6 @@
- * Corrected problems in the Visual Studio project files
- * ogg123: backported fix from libfishsound to patch the Speex decoder (#1347)
-+* ogg123: fixed CPU issue when outputting to a closed pipe (#1357)
-+* ogg123: return value to stop decoding after buffer is shut down (#1357)
- * oggenc: fixed a core dump while resampling from FLAC (#1316)
- * oggenc: fixed a typo in the Skeleton handling routine
+--- a/CHANGES
++++ b/CHANGES
+@@ -3,6 +3,8 @@
+ * FLAC support now relies on libFLAC
+ * Support for large files
+ * Fixed acinclude.m4 to properly support --no switches
++* ogg123: fixed CPU issue when outputting to a closed pipe (#1357)
++* ogg123: return value to stop decoding after buffer is shut down (#1357)
+ * ogg123: added remote control support
+ * ogg123: fixed a bug in esd when pressing CTRL + C
+ * ogg123: fixed a type mismatch in option parsing for 64 bit systems
+--- a/ogg123/buffer.c
++++ b/ogg123/buffer.c
+@@ -207,7 +207,7 @@
+
+ /* This test is safe since curfill will never decrease and eos will
+ never be unset. */
+- while ( !(buf->eos && buf->curfill == 0)) {
++ while ( !(buf->eos && buf->curfill == 0) && !buf->abort_write) {
+
+ if (buf->cancel_flag || sig_request.cancel)
+ break;
+@@ -251,6 +251,11 @@
+ write_amount == buf->curfill ? buf->eos : 0,
+ buf->write_arg);
+
++ if (!write_amount) {
++ DEBUG("Error writing to the audio device. Aborting.");
++ buffer_abort_write(buf);
++ }
++
+ LOCK_MUTEX(buf->mutex);
+
+ buf->curfill -= write_amount;
+@@ -278,7 +283,7 @@
+ }
+
+
+-void submit_data_chunk (buf_t *buf, char *data, size_t size)
++int submit_data_chunk (buf_t *buf, char *data, size_t size)
+ {
+ long buf_write_pos; /* offset of first available write location */
+ size_t write_size;
+@@ -341,6 +346,7 @@
+ pthread_cleanup_pop(0);
+
+ DEBUG("Exit submit_data_chunk");
++ return !buf->abort_write;
+ }
+
+
+@@ -515,8 +521,8 @@
+
+ /* --- Data buffering functions --- */
+
+-void buffer_submit_data (buf_t *buf, char *data, long nbytes) {
+- submit_data_chunk (buf, data, nbytes);
++int buffer_submit_data (buf_t *buf, char *data, long nbytes) {
++ return submit_data_chunk (buf, data, nbytes);
+ }
+
+ size_t buffer_get_data (buf_t *buf, char *data, long nbytes)
+@@ -746,7 +752,7 @@
+ pthread_cleanup_push(buffer_mutex_unlock, buf);
+
+ LOCK_MUTEX(buf->mutex);
+- while (!empty) {
++ while (!empty && !buf->abort_write) {
+
+ if (buf->curfill > 0) {
+ DEBUG1("Buffer curfill = %ld, going back to sleep.", buf->curfill);
+--- a/ogg123/buffer.h
++++ b/ogg123/buffer.h
+@@ -110,7 +110,7 @@
+ void buffer_thread_kill (buf_t *buf);
+
+ /* --- Data buffering functions --- */
+-void buffer_submit_data (buf_t *buf, char *data, long nbytes);
++int buffer_submit_data (buf_t *buf, char *data, long nbytes);
+ size_t buffer_get_data (buf_t *buf, char *data, long nbytes);
+
+ void buffer_mark_eos (buf_t *buf);
+--- a/ogg123/http_transport.c
++++ b/ogg123/http_transport.c
+@@ -68,7 +68,8 @@
+ if (myarg->cancel_flag || sig_request.cancel)
+ return 0;
+
+- buffer_submit_data(myarg->buf, ptr, size*nmemb);
++ if (!buffer_submit_data(myarg->buf, ptr, size*nmemb))
++ return 0;
+
+ if (myarg->cancel_flag || sig_request.cancel)
+ return 0;
+--- a/ogg123/ogg123.c
++++ b/ogg123/ogg123.c
+@@ -239,10 +239,10 @@
+ }
+
+ options->seekmode = DECODER_SEEK_NONE;
+-
++
+ return 1;
+ }
+-
++
+ /* This function selects which statistics to display for our
+ particular configuration. This does not have anything to do with
+ verbosity, but rather with which stats make sense to display. */
+@@ -271,7 +271,7 @@
+ stats[7].enabled = 0;
+ }
+ free(data_source_stats);
+-
++
+ /* Assume we need total time display, and let display_statistics()
+ determine at what point it should be turned off during playback */
+ stats[2].enabled = 1; /* Remaining playback time */
+@@ -294,14 +294,14 @@
+ decoder->format->statistics(decoder));
+
+ if (options.remote) {
+-
++
+ /* Display statistics via the remote interface */
+ remote_time(pstats_arg->decoder_statistics->current_time,
+ pstats_arg->decoder_statistics->total_time,
+ pstats_arg->decoder_statistics->instant_bitrate);
+
+ } else {
+-
++
+ /* Disable/Enable statistics as needed */
+
+ if (pstats_arg->decoder_statistics->total_time <
+@@ -447,8 +447,8 @@
+
+ print_audio_devices_info(options.devices);
+
+-
+- /* Setup buffer */
++
++ /* Setup buffer */
+ if (options.buffer_size > 0) {
+ /* Keep sample size alignment for surround sound with up to 10 channels */
+ options.buffer_size = (options.buffer_size + PRIMAGIC - 1) / PRIMAGIC * PRIMAGIC;
+@@ -473,7 +473,6 @@
+ signal (SIGTERM, signal_handler);
+
+ if (options.remote) {
+-
+ /* run the mainloop for the remote interface */
+ remote_mainloop();
+
+@@ -483,9 +482,9 @@
+ /* Shuffle playlist */
+ if (options.shuffle) {
+ int i;
+-
++
+ srandom(time(NULL));
+-
++
+ for (i = 0; i < items; i++) {
+ int j = i + random() % (items - i);
+ char *temp = playlist_array[i];
+@@ -568,7 +567,7 @@
+ status_error(_("The file format of %s is not supported.\n"), source_string);
+ return;
+ }
+-
++
+ if ( (decoder = format->init(source, &options, &new_audio_fmt,
+ &decoder_callbacks,
+ decoder_callbacks_arg)) == NULL ) {
+@@ -586,7 +585,7 @@
+
+ /* Start the audio playback thread before we begin sending data */
+ if (audio_buffer != NULL) {
+-
++
+ /* First reset mutexes and other synchronization variables */
+ buffer_reset (audio_buffer);
+ buffer_thread_start (audio_buffer);
+@@ -614,11 +613,11 @@
+
+ /* Main loop: Iterates over all of the logical bitstreams in the file */
+ while (!eof && !sig_request.exit) {
+-
++
+ /* Loop through data within a logical bitstream */
+ eos = 0;
+ while (!eos && !sig_request.exit) {
+-
++
+ /* Check signals */
+ if (sig_request.skipfile) {
+ eof = eos = 1;
+@@ -664,7 +663,6 @@
+ break;
+ }
+
+-
+ /* Check to see if the audio format has changed */
+ if (!audio_format_equal(&new_audio_fmt, &old_audio_fmt)) {
+ old_audio_fmt = new_audio_fmt;
+@@ -682,7 +680,7 @@
+ else
+ audio_reopen_action(NULL, reopen_arg);
+ }
+-
++
+
+ /* Update statistics display if needed */
+ if (next_status <= 0) {
+@@ -702,11 +700,15 @@
+ do {
+
+ if (nthc-- == 0) {
+- if (audio_buffer)
+- buffer_submit_data(audio_buffer, convbuffer, ret);
+- else
++ if (audio_buffer) {
++ if (!buffer_submit_data(audio_buffer, convbuffer, ret)) {
++ status_error(_("Error: buffer write failed.\n"));
++ eof = eos = 1;
++ break;
++ }
++ } else
+ audio_play_callback(convbuffer, ret, eos, &audio_play_arg);
+-
++
+ nthc = options.nth - 1;
+ }
+
+@@ -714,15 +716,15 @@
+ ++ntimesc < options.ntimes);
+
+ ntimesc = 0;
+-
++
+ } /* End of data loop */
+-
++
+ } /* End of logical bitstream loop */
+-
++
+ /* Done playing this logical bitstream. Clean up house. */
+
+ if (audio_buffer) {
+-
++
+ if (!sig_request.exit && !sig_request.skipfile) {
+ buffer_mark_eos(audio_buffer);
+ buffer_wait_for_empty(audio_buffer);
+@@ -733,14 +735,13 @@
+
+ /* Print final stats */
+ display_statistics_quick(stat_format, audio_buffer, source, decoder);
+-
+-
++
+ format->cleanup(decoder);
+ transport->close(source);
+ status_reset_output_lock(); /* In case we were killed mid-output */
+
+ status_message(1, _("Done."));
+-
++
+ if (sig_request.exit)
+ exit (exit_status);
+ }
+@@ -748,7 +749,7 @@
+
+ void exit_cleanup ()
+ {
+-
++
+ if (audio_buffer != NULL) {
+ buffer_destroy (audio_buffer);
+ audio_buffer = NULL;
=== modified file 'debian/patches/upstream_r14982-ogg123_man_page_http_only.diff'
--- a/debian/patches/upstream_r14982-ogg123_man_page_http_only.diff 2008-05-31 14:29:15 +0000
+++ b/debian/patches/upstream_r14982-ogg123_man_page_http_only.diff 2009-02-28 15:27:50 +0000
@@ -1,15 +1,15 @@
-Index: /trunk/vorbis-tools/ogg123/ogg123.1
-===================================================================
---- /trunk/vorbis-tools/ogg123/ogg123.1 (revision 14473)
-+++ /trunk/vorbis-tools/ogg123/ogg123.1 (revision 14982)
-@@ -61,8 +61,8 @@
- Directories will be treated in the same way as on the command line.
- .IP "-b n, --buffer n"
--Use an input buffer of approximately 'n' kilobytes.
-+Use an input buffer of approximately 'n' kilobytes. HTTP-only option.
- .IP "-p n, --prebuffer n"
- Prebuffer 'n' percent of the input buffer. Playback won't begin until
--this prebuffer is complete.
-+this prebuffer is complete. HTTP-only option.
- .IP "-d device, --device device"
- Specify output device. See
+--- a/ogg123/ogg123.1
++++ b/ogg123/ogg123.1
+@@ -60,10 +60,10 @@
+ one filename, directory name, or URL per line. Blank lines are permitted.
+ Directories will be treated in the same way as on the command line.
+ .IP "-b n, --buffer n"
+-Use an input buffer of approximately 'n' kilobytes.
++Use an input buffer of approximately 'n' kilobytes. HTTP-only option.
+ .IP "-p n, --prebuffer n"
+ Prebuffer 'n' percent of the input buffer. Playback won't begin until
+-this prebuffer is complete.
++this prebuffer is complete. HTTP-only option.
+ .IP "-d device, --device device"
+ Specify output device. See
+ .B DEVICES
More information about the pkg-xiph-commits
mailing list