mirror of
https://gitlab.xiph.org/xiph/ezstream.git
synced 2024-12-04 14:46:31 -05:00
7fd61dc929
git-svn-id: https://svn.xiph.org/trunk/ezstream@13275 0101bb08-14d6-0310-b084-bc0e0c8e3800
981 lines
31 KiB
Plaintext
981 lines
31 KiB
Plaintext
2007-07-17 14:45 moritz
|
|
|
|
* [r13274] NEWS:
|
|
Get this out the door today, no need to hold back.
|
|
|
|
2007-07-16 00:32 moritz
|
|
|
|
* [r13272] NEWS, src/ezstream.c:
|
|
D'oh! Make <stream_once/> work with playlists as well. Problem
|
|
description found in the Icecast mailing list archive, in a mail
|
|
by Geoff Shang, via Google. Let's hope that the bug tracker
|
|
prevents this kind of bug hunting in the future ...
|
|
|
|
2007-07-15 19:16 moritz
|
|
|
|
* [r13270] win32/README.win32:
|
|
Provide a pointer to the home page to Windows users.
|
|
|
|
2007-07-15 19:11 moritz
|
|
|
|
* [r13269] configure.in:
|
|
Bump version number after the 0.4.1 release.
|
|
|
|
2007-07-15 16:38 moritz
|
|
|
|
* [r13265] ChangeLog:
|
|
Update.
|
|
|
|
2007-07-15 16:37 moritz
|
|
|
|
* [r13264] NEWS:
|
|
This will be released today.
|
|
|
|
2007-07-14 01:32 moritz
|
|
|
|
* [r13259] COPYING, doc/ezstream.1.in, src/compat.c, src/compat.h,
|
|
src/configfile.c, src/configfile.h, src/ezstream.c,
|
|
src/metadata.c, src/metadata.h, src/playlist.c, src/playlist.h,
|
|
src/util.c, src/util.h:
|
|
Change my email address to the new one.
|
|
|
|
2007-07-14 01:27 moritz
|
|
|
|
* [r13258] NEWS:
|
|
Update.
|
|
|
|
2007-07-14 01:20 moritz
|
|
|
|
* [r13257] src/ezstream.c:
|
|
Plug an fd leak, triggered by using -q.
|
|
|
|
2007-07-13 10:45 moritz
|
|
|
|
* [r13253] README:
|
|
Spelingk, and fmt -78.
|
|
|
|
2007-07-13 10:30 moritz
|
|
|
|
* [r13252] doc/ezstream.1.in:
|
|
Spelink.
|
|
|
|
2007-03-11 05:17 moritz
|
|
|
|
* [r12724] configure.in, win32/config.h:
|
|
Bump version number after the 0.4.0 release.
|
|
|
|
2007-03-11 05:04 moritz
|
|
|
|
* [r12720] ChangeLog:
|
|
sync
|
|
|
|
2007-03-11 04:39 moritz
|
|
|
|
* [r12719] NEWS:
|
|
Release coming up today.
|
|
|
|
2007-03-11 03:49 moritz
|
|
|
|
* [r12718] NEWS:
|
|
fixes
|
|
|
|
2007-03-11 00:28 moritz
|
|
|
|
* [r12717] src/metadata.c:
|
|
Make this build on Windows and not segfault the MIPSpro C
|
|
compiler version <7.2.
|
|
|
|
2007-03-11 00:02 moritz
|
|
|
|
* [r12716] doc/ezstream.1.in:
|
|
Formatting improvements, and some minor rewording.
|
|
|
|
2007-03-10 23:36 moritz
|
|
|
|
* [r12715] win32/Makefile.am:
|
|
Missed a conf -> examples change here.
|
|
|
|
2007-03-10 23:28 moritz
|
|
|
|
* [r12714] src/metadata.c:
|
|
taglib_file_audioproperties returns const
|
|
|
|
2007-03-10 22:44 moritz
|
|
|
|
* [r12713] src/metadata.c:
|
|
Remove unreachable statement.
|
|
|
|
2007-03-10 21:23 moritz
|
|
|
|
* [r12712] NEWS, src/metadata.c, src/playlist.c:
|
|
Do not execute group-/world-writeable playlist and metadata
|
|
scripts.
|
|
|
|
2007-03-10 21:18 moritz
|
|
|
|
* [r12711] NEWS, src/ezstream.c, src/metadata.c, src/metadata.h:
|
|
Include the total playing time of a song in the "real-time"
|
|
output, if TagLib supplies it.
|
|
|
|
2007-03-10 20:13 moritz
|
|
|
|
* [r12710] Makefile.am, conf, configure.in, examples,
|
|
examples/Makefile.am, examples/ezstream_metadata.xml,
|
|
examples/ezstream_mp3.xml,
|
|
examples/ezstream_reencoding_example_mp3.xml,
|
|
examples/ezstream_reencoding_example_theora.xml,
|
|
examples/ezstream_reencoding_example_vorbis.xml,
|
|
examples/ezstream_vorbis.xml, examples/meta.sh, examples/play.sh,
|
|
win32/README.win32:
|
|
Move conf/ to examples/. Add ezstream_metadata.xml and two
|
|
minimalistic example scripts.
|
|
|
|
2007-03-10 19:03 moritz
|
|
|
|
* [r12707] NEWS, doc/ezstream.1.in, src/configfile.c,
|
|
src/configfile.h, src/ezstream.c, src/metadata.c, src/metadata.h:
|
|
More metadata featuritis, add <metadata_format/> and implement
|
|
support for '@a@', '@t@' and '@s@'.
|
|
|
|
2007-03-10 02:27 moritz
|
|
|
|
* [r12701] src/configfile.c, src/configfile.h, src/ezstream.c,
|
|
src/metadata.c, src/metadata.h:
|
|
Commit work-in-progress towards more fine-grained control over
|
|
metadata. This has not been checked for changes to previous
|
|
behavior and isn't complete, yet. More to come.
|
|
|
|
2007-03-09 13:43 moritz
|
|
|
|
* [r12698] Makefile.am, src/ezstream.c, win32/Makefile.am,
|
|
win32/README.win32:
|
|
Various tweakings, and sync Win32 README with new reality.
|
|
|
|
2007-03-09 02:30 moritz
|
|
|
|
* [r12693] NEWS, doc/ezstream.1.in, src/configfile.c,
|
|
src/configfile.h, src/ezstream.c, src/metadata.c, src/metadata.h:
|
|
Add new <metadata_progname> configuration option, which specifies
|
|
an external program/script to get metadata from. Also include
|
|
SIGUSR2 handling that triggers metadata updates from the external
|
|
program mid-stream.
|
|
|
|
2007-03-09 02:24 moritz
|
|
|
|
* [r12692] src/playlist.c:
|
|
Squash a bug that I introduced a few hours ago ...
|
|
|
|
2007-03-09 01:52 moritz
|
|
|
|
* [r12691] Makefile.am:
|
|
Commit forgotten /Makefile.am change (new regen-win32: target).
|
|
|
|
2007-03-09 01:49 moritz
|
|
|
|
* [r12690] NEWS:
|
|
sync
|
|
|
|
2007-03-09 01:49 moritz
|
|
|
|
* [r12689] win32/Makefile.am, win32/ezstream.1.html:
|
|
Kill off the ugly HTML page. Replace with a regen-win32: target
|
|
in Makefile.am that automatically generates a PDF version of the
|
|
current man page (PDF not included in the source tarball.)
|
|
|
|
2007-03-09 01:44 moritz
|
|
|
|
* [r12688] win32/README.win32:
|
|
Update with blurp about limited functionality.
|
|
|
|
2007-03-08 21:38 moritz
|
|
|
|
* [r12686] src/ezstream.c, src/playlist.c:
|
|
Shrink buffers to PATH_MAX.
|
|
|
|
2007-03-08 20:59 moritz
|
|
|
|
* [r12685] src/ezstream.c, src/playlist.c, src/playlist.h:
|
|
Fix playlist_free() as well ...
|
|
|
|
2007-03-08 20:24 moritz
|
|
|
|
* [r12684] NEWS, README, configure.in, src/Makefile.am,
|
|
src/metadata.c:
|
|
Working TagLib support (optional.)
|
|
|
|
2007-03-08 19:46 moritz
|
|
|
|
* [r12683] src/compat.h:
|
|
Define SIZE_T_MAX to the real maximum of size_t.
|
|
|
|
2007-03-08 19:45 moritz
|
|
|
|
* [r12682] win32/ezstream.vcproj:
|
|
sync
|
|
|
|
2007-03-08 15:25 moritz
|
|
|
|
* [r12681] src/ezstream.c, src/metadata.c, src/metadata.h:
|
|
Hmph. I've been stepping into the copy-of-pointer trap twice now.
|
|
Fix it again.
|
|
|
|
2007-03-08 14:39 moritz
|
|
|
|
* [r12680] configure.in, src/Makefile.am, src/ezstream.c,
|
|
src/metadata.c, src/metadata.h:
|
|
Iterate towards optional TagLib support, as well as scripted
|
|
metadata support. This is just the first step and equivalent to
|
|
current functionality.
|
|
|
|
2007-03-08 14:36 moritz
|
|
|
|
* [r12679] configure.in, win32/config.h:
|
|
New features coming up, bump version to 0.4.0
|
|
|
|
2007-03-08 14:34 moritz
|
|
|
|
* [r12678] NEWS:
|
|
sync
|
|
|
|
2007-03-08 01:12 moritz
|
|
|
|
* [r12677] src/util.c, src/util.h:
|
|
Replace the very broken xfree() function with an xfree() macro -
|
|
the main point was to set ptr to NULL, but the function only set
|
|
the copy of ptr to NULL. Spotted by Karl Heyes, thanks a lot!
|
|
|
|
2007-03-07 23:39 moritz
|
|
|
|
* [r12676] src/playlist.c:
|
|
Remove redundant code since the switch to xfree().
|
|
|
|
2007-03-07 21:01 moritz
|
|
|
|
* [r12673] src/Makefile.am, src/compat.c, src/compat.h,
|
|
src/configfile.c, src/ezstream.c, src/playlist.c, src/util.c,
|
|
src/util.h, win32/ezstream.vcproj:
|
|
More code reorganization, move compatibility and utility
|
|
functions out of ezstream.c. Use a basename() function for
|
|
Windows that behaves identical to a modern Unix' basename().
|
|
|
|
2007-03-07 12:53 moritz
|
|
|
|
* [r12672] src/configfile.c:
|
|
cosmetics
|
|
|
|
2007-03-06 14:11 moritz
|
|
|
|
* [r12666] ., conf, doc, m4, src, win32:
|
|
Ignore generated files.
|
|
|
|
2007-03-06 14:02 moritz
|
|
|
|
* [r12665] configure.in, win32/config.h:
|
|
Bump version number after the 0.3.0 release.
|
|
|
|
2007-03-05 02:03 moritz
|
|
|
|
* [r12639] ChangeLog:
|
|
regen
|
|
|
|
2007-03-05 01:01 moritz
|
|
|
|
* [r12637] win32/ezstream.1.html:
|
|
regen
|
|
|
|
2007-03-05 00:51 moritz
|
|
|
|
* [r12636] doc/ezstream.1.in:
|
|
Fix a typo, and reword a few sentences to make them easier to
|
|
understand.
|
|
|
|
2007-03-04 23:58 moritz
|
|
|
|
* [r12635] NEWS:
|
|
Add release date. This is definitely going out today...
|
|
|
|
2007-03-04 21:19 moritz
|
|
|
|
* [r12634] ChangeLog:
|
|
regen
|
|
|
|
2007-03-04 21:12 moritz
|
|
|
|
* [r12633] README:
|
|
Sync with the blurb on the new home page.
|
|
|
|
2007-03-04 15:59 moritz
|
|
|
|
* [r12630] src/configfile.c:
|
|
Fix logic error and prevent an endless loop on error(s) in the
|
|
config file.
|
|
|
|
2007-03-04 15:50 moritz
|
|
|
|
* [r12629] src/playlist.c:
|
|
While rand() being crappy is true for most/all *nix systems, on
|
|
Windows, this is different. The shifting severely screwed up its
|
|
randomness. Just leave it away and systems that only have a bad
|
|
version of rand() will have to just deal with it.
|
|
|
|
2007-03-04 15:16 moritz
|
|
|
|
* [r12628] COPYING, NEWS, src/configfile.c, src/ezstream.c,
|
|
win32/README.win32:
|
|
More pre-release maintenance.
|
|
|
|
2007-03-04 14:29 moritz
|
|
|
|
* [r12627] win32/Makefile.am, win32/README.win32, win32/config.h,
|
|
win32/ezstream.1.html, win32/ezstream.sln, win32/ezstream.vcproj:
|
|
Yay. I finally managed to build a statically linked and
|
|
self-contained ezstream.exe. Update, and regen the HTML man page
|
|
for -V.
|
|
|
|
2007-03-04 14:27 moritz
|
|
|
|
* [r12626] doc/ezstream.1.in, src/ezstream.c:
|
|
Add -V command line parameter to print the version number and
|
|
exit.
|
|
|
|
2007-03-03 20:20 moritz
|
|
|
|
* [r12621] win32/Makefile.am, win32/README.win32,
|
|
win32/ezstream.1.html, win32/ezstream.sln, win32/ezstream.vcproj:
|
|
More, rather evil Windows stuff. This is about as far as I'm
|
|
willing to go for now. Volunteers willing to take all this
|
|
Windows stuff off my hands are very welcome. ;-)
|
|
|
|
2007-03-03 20:17 moritz
|
|
|
|
* [r12620] src/compat.h, src/configfile.c, src/ezstream.c,
|
|
src/strtonum.c:
|
|
Some more cosmetic tweaks.
|
|
|
|
2007-03-03 17:50 moritz
|
|
|
|
* [r12617] src/ezstream.c:
|
|
Forgot one PATH_SEPARATOR instance ...
|
|
|
|
2007-03-03 17:48 moritz
|
|
|
|
* [r12616] src/ezstream.c:
|
|
Use size_t in strrcmp().
|
|
|
|
2007-03-03 16:13 moritz
|
|
|
|
* [r12615] src/Makefile.am, src/compat.h, src/ezstream.c,
|
|
src/playlist.c, win32/Makefile.am, win32/ezstream.dsp,
|
|
win32/ezstream.dsw, win32/ezstream.iss, win32/ezstream.sln,
|
|
win32/ezstream.vcproj:
|
|
Iterate back towards working Windows support.
|
|
|
|
2007-03-03 12:42 moritz
|
|
|
|
* [r12614] src/ezstream.c:
|
|
STDERR_FILENO -> fileno(stderr), and fix a brain'o: Systems with
|
|
limited or no signals support obviously don't have
|
|
SIG_HUP/SIG_USR1 defined.
|
|
|
|
2007-03-02 12:52 moritz
|
|
|
|
* [r12603] configure.in, src/Makefile.am, src/configfile.c,
|
|
src/ezstream.c, src/strfctns.h, src/strlcat.c, src/strlcpy.c,
|
|
src/strlfctns.h, src/strtonum.c:
|
|
Improve string to integer conversion stuff, and have another stab
|
|
at the config file parsing. Ezstream now prints each error it can
|
|
find and then bails out, instead of bailing out on the first
|
|
error. Tweak URL parsing as well, and do some cosmetic changes to
|
|
the error messages.
|
|
|
|
2007-03-02 00:57 moritz
|
|
|
|
* [r12599] NEWS, doc/ezstream.1.in, src/configfile.c,
|
|
src/configfile.h, src/ezstream.c:
|
|
Allow users to restrict the number of reconnection attempts. This
|
|
also changes how reconnections are handled in general: A
|
|
recovered connection always skips to the next tune as well, as it
|
|
seems that at least for Ogg Vorbis, libshout wants to see an Ogg
|
|
header after a shout_open(). The new code makes this behavior
|
|
consistent among all formats.
|
|
|
|
2007-03-01 14:50 moritz
|
|
|
|
* [r12597] configure.in, src/ezstream.c, src/playlist.c,
|
|
src/strlcat.c, src/strlcpy.c, src/util.c:
|
|
Enable more warnings on gcc, and do some miscellaneous cleanups.
|
|
|
|
2007-03-01 01:22 moritz
|
|
|
|
* [r12596] src/ezstream.c:
|
|
Redirect only de-/encoder screen output to /dev/null with -q, and
|
|
restore standard error outside that popen() call.
|
|
|
|
2007-03-01 00:34 moritz
|
|
|
|
* [r12595] m4/shout.m4:
|
|
Tweak XXX comment.
|
|
|
|
2007-03-01 00:10 moritz
|
|
|
|
* [r12594] README, configure.in:
|
|
Make the example configuration files directory configurable.
|
|
|
|
2007-02-28 21:48 moritz
|
|
|
|
* [r12592] NEWS, conf/ezstream_mp3.xml, conf/ezstream_vorbis.xml,
|
|
doc/ezstream.1.in, src/configfile.c, src/configfile.h,
|
|
src/ezstream.c:
|
|
Add new <stream_once> configuration option for disabling
|
|
continuous streaming.
|
|
|
|
2007-02-28 21:26 moritz
|
|
|
|
* [r12591] NEWS, conf/ezstream_reencoding_example_mp3.xml,
|
|
conf/ezstream_reencoding_example_vorbis.xml, doc/ezstream.1.in,
|
|
src/configfile.c, src/configfile.h, src/ezstream.c,
|
|
src/playlist.c, src/playlist.h:
|
|
Add new playlist scripting feature (works similar to Ices 2.x.)
|
|
|
|
2007-02-28 15:35 moritz
|
|
|
|
* [r12590] configure.in, src/ezstream.c:
|
|
Replace geteuid() check with stat(), and make it an error if the
|
|
configuration file is group or world writeable. This is actually
|
|
what the warning about root was all about.
|
|
|
|
2007-02-28 13:53 moritz
|
|
|
|
* [r12589] src/Makefile.am, src/ezsignals.h, src/ezstream.c:
|
|
Back out hardly used ezsignals.h.
|
|
|
|
2007-02-28 12:47 moritz
|
|
|
|
* [r12588] NEWS:
|
|
Remove redundant paragraph.
|
|
|
|
2007-02-28 12:44 moritz
|
|
|
|
* [r12587] CHANGELOG, ChangeLog, Makefile.am, NEWS, mkcl.sh:
|
|
Make a more standard distribution: Rename CHANGELOG to NEWS,
|
|
bring back the complete ChangeLog and add mkcl.sh that contains
|
|
the options to generate ChangeLog.
|
|
|
|
2007-02-28 11:06 moritz
|
|
|
|
* [r12586] CHANGELOG, ChangeLog, Makefile.am:
|
|
Switch from a generated ChangeLog to a manually maintained and
|
|
more compact CHANGELOG.
|
|
|
|
2007-02-28 11:03 moritz
|
|
|
|
* [r12585] src/ezstream.c:
|
|
Sync usageHelp() with new reality.
|
|
|
|
2007-02-27 14:44 moritz
|
|
|
|
* [r12576] configure.in:
|
|
Let MIPS[pro] C be chatty with warnings and check for basename()
|
|
in libgen. Ezstream now builds on IRIX.
|
|
|
|
2007-02-27 14:42 moritz
|
|
|
|
* [r12575] src/ezstream.c:
|
|
getopt() returns int, not char.
|
|
|
|
2007-02-27 14:41 moritz
|
|
|
|
* [r12574] m4/xiph_xml2.m4:
|
|
Use backticks to execute xml2-config/xslt-config, which is more
|
|
portable.
|
|
|
|
2007-02-27 12:46 moritz
|
|
|
|
* [r12573] README:
|
|
Document a caveat when building ezstream on Solaris with a
|
|
different compiler than the one used to build libshout.
|
|
|
|
2007-02-26 20:29 moritz
|
|
|
|
* [r12572] configure.in, m4/shout.m4:
|
|
Make this work on static archs, and get one step closer to SunCC
|
|
support on Solaris. Also, don't complain if libshout isn't
|
|
thread-safe, as Ezstream isn't multithreaded.
|
|
|
|
2007-02-26 19:59 moritz
|
|
|
|
* [r12571] Makefile.am, configure.in, m4/Makefile.am:
|
|
Add m4/ to the distribution tarball.
|
|
|
|
2007-02-26 15:28 moritz
|
|
|
|
* [r12570] Makefile.am, m4/ogg.m4, m4/vorbis.m4:
|
|
Unbreak "make distcheck": $prefix is not a good default, use
|
|
/usr/local instead. This makes it more likely that installed
|
|
libogg and libvorbis are found, when the user (or autoconf)
|
|
specifies a different --prefix. Users who installed their
|
|
libraries in their homedir now have to set $OGG_PREFIX and
|
|
$VORBIS_PREFIX, or set their respective --with arguments. Let the
|
|
snapshot target use distcheck now that it works.
|
|
|
|
2007-02-26 02:56 moritz
|
|
|
|
* [r12565] m4/ac_config_libconfig_in.m4, m4/acx_pthread.m4,
|
|
m4/ogg.m4, m4/shout.m4, m4/vorbis.m4, m4/xiph_compiler.m4,
|
|
m4/xiph_curl.m4, m4/xiph_net.m4, m4/xiph_path_python.m4,
|
|
m4/xiph_types.m4, m4/xiph_xml2.m4:
|
|
Remove unused .m4 files and sync the used ones with Icecast.
|
|
|
|
2007-02-25 18:28 moritz
|
|
|
|
* [r12564] src/ezstream.c:
|
|
Make Ezstream work properly and do the right thing, even when
|
|
bombarded with a flurry of simultaneous SIGHUP and SIGUSR1
|
|
signals. From what I can tell, signal handling is now quite solid
|
|
now. Achieve this by moving most of streamFile() into a new
|
|
sendStream() function, which is called within a new do-while loop
|
|
inside streamFile(). There, proper behavior is ensured and a race
|
|
condition resolved in favor of SIGHUP.
|
|
|
|
2007-02-25 16:00 moritz
|
|
|
|
* [r12563] src/ezstream.c:
|
|
Switch from using signal() to sigaction() and friends, so that
|
|
SA_RESTART can be used. This is required for Solaris and possibly
|
|
others, where signal handlers have to be reinstalled after having
|
|
caught one signal via signal(). Also prevent Ezstream from being
|
|
killed by a handled signal in streamFile(), where they can
|
|
interrupt fread()'s system calls. This improves matters, but
|
|
isn't perfect, yet. A SIGHUP signal can still cause skipping to
|
|
the next track, which should be triggered only by SIGUSR1.
|
|
|
|
2007-02-25 14:00 moritz
|
|
|
|
* [r12562] Makefile.am, conf/Makefile.am, configure.in,
|
|
src/Makefile.am, src/configfile.c, src/configfile.h,
|
|
src/ezstream.c, win32/Makefile.am:
|
|
Various cleanups and auto-fu tweaks. * Make Makefile.am files
|
|
look alike as much as possible. * Remove debug: target and don't
|
|
mess with the users DEBUG environment variable: Autoconf checks
|
|
for -g and automatically adds it to CFLAGS, which is overridden
|
|
by the user's $DEBUG. If the user didn't specify one, "make
|
|
install" will strip the resulting binaries and leave the
|
|
debugging symbols intact otherwise. * Remove profile: target, as
|
|
it is quite pointless in Ezstream. Also, the user can add
|
|
profiling flags via the $DEBUG variable as well. * Remove
|
|
-ffast-math and -fsigned-char from gcc, and enable two additional
|
|
warnings instead. * Unconfuse Solaris compiler flags
|
|
(unfortunately, the configure script still fails in the libshout
|
|
check with some obscure linker error): Do not force -x04 and
|
|
-fast optimizations, let the user decide (it doesn't matter for
|
|
Ezstream anyways.) Remove -xgc92, which is deprecated and
|
|
actually makes the resulting binary run slower on SPARC. Also
|
|
remove -fsimple, which does not help and has the potential of
|
|
causing trouble, and don't enable verbose warnings just to
|
|
disable them afterwards with -w. Leave only -v for verbose
|
|
warnings. * Const'ify getFormat*() functions and blankString, and
|
|
squelch a few const- related warnings. * Squelch a signedness
|
|
warning and fix two ;; syntax errors. * Add a snapshot target to
|
|
Makefile.am that creates a tarball of the form
|
|
ezstream-snapshot-YYYYMMDD.tar.gz.
|
|
|
|
2007-02-25 03:49 moritz
|
|
|
|
* [r12557] src/ezstream.c:
|
|
Merge changes to the remaining two functions, openResource() and
|
|
streamFile(), after which the merge is complete. Changes in
|
|
openResource(): * Let the caller know whether we're streaming
|
|
from standard input, and give it a copy of the metadata
|
|
information. * Make filename extension matching case insensitive.
|
|
Ezstream can now stream foo.Ogg out of playlist.tXt. (On that
|
|
note, another item from the parseConfig() commit log message was
|
|
missing: <format/> and <match/> are also case insensitive now.)
|
|
Changes in streamFile(): * New feature: Skip currently playing
|
|
track when receiving SIGUSR1. * New feature: When using both the
|
|
new -q and -v command line parameters, Ezstream now displays some
|
|
"real-time" information: playlist position, elapsed time
|
|
streaming the current track, and approximate bitrate in kbps. *
|
|
Fix the fread() loop by moving the "if read bytes > 0" condition
|
|
into the while statement, and check with ferror() afterwards
|
|
whether an error occured. * Remove redundant shout_delay() call.
|
|
Ezstream puts itself to sleep with shout_sync(). * Return a value
|
|
that makes sense in main()'s do-while loop, instead of whatever
|
|
shout_send() returned last. * Remove or prettify a few messages.
|
|
|
|
2007-02-25 03:10 moritz
|
|
|
|
* [r12554] src/ezstream.c:
|
|
Merge processMetadata() changes: * Fix how the metadata string is
|
|
generated. Don't include the " - " in the output if either artist
|
|
or title are missing from ID3v1/Vorbis tags. * Print the correct
|
|
error message when ov_open() fails. * Improve filename-based
|
|
generation of metadata. Use a copy of fileName for basename(),
|
|
which may modify its argument in some places where the old, weird
|
|
POSIX implementation is used. Also, basename() is not infallible,
|
|
but when it fails, it is annoying for us. Assert that it cannot
|
|
fail since we feed it with path names < PATH_MAX (handled in
|
|
playlist.c and configfile.c.) In short, make processMetadata()
|
|
always return something more or less useful as long as the file
|
|
in question can be opened.
|
|
|
|
2007-02-25 02:36 moritz
|
|
|
|
* [r12553] src/ezstream.c:
|
|
Merge changes to replaceString() and buildCommandString(), and do
|
|
the formatting nitpickery to setMetadata(). Changes in
|
|
replaceString(): * Fix a heap overflow. replaceString() would
|
|
happily replace multiple '@T@' and '@M@' placeholders and write
|
|
into *dest until things blow up. Fix this by using safe string
|
|
functions. Then completely prevent it by ensuring that it
|
|
replaces only one placeholder per call (adjusting
|
|
buildCommandString() accordingly) and already complaining to the
|
|
user in parseConfig() about illegal, multiple placeholders in
|
|
their command lines. (That parseConfig() change was missing from
|
|
the commit log earlier.) In buildCommandString(): * Use xcalloc()
|
|
instead of malloc() and get rid of the now redundant memset()
|
|
calls. * Allow decoder command lines to contain the '@M@'
|
|
metadata placeholder. Useful for combined de-/encoders like
|
|
ffmpeg2theora. * Tweak message about "unsupported" format, which
|
|
used to be false in the case of Ogg Theora streams. * Plug
|
|
several memory leaks. * Don't print the "Executing command 'foo'"
|
|
message in this function.
|
|
|
|
2007-02-25 01:14 moritz
|
|
|
|
* [r12552] src/ezstream.c:
|
|
Merge changes to main(), urlParse() and streamPlaylist(). In
|
|
main(): * Install the signal handler as late as possible. * Add
|
|
new command line options: -v (verbose, use twice for even more
|
|
verbose output) and -q (quiet, redirect standard error output
|
|
from external de-/ encoders to /dev/null.) * It is now an error
|
|
to supply more than one -c parameter. This prevents unexpected
|
|
results. * Add a stern warning when ezstream is running as root.
|
|
Just Don't Do It. Leaving the configfile writeable to others by
|
|
accident could mean instant root compromise. * Before handing the
|
|
config file over to libxml, try to open it ourselves first. The
|
|
error message from strerror() is a lot more helpful than the
|
|
cryption I/O error printed by libxml. * Don't preallocate memory
|
|
for urlParse(). * Fix command line error messages, they seem to
|
|
be for a different program than Ezstream. * More terse libshout
|
|
error messages, just print which function failed. I consider
|
|
these errors of questionable value for an end user, but at least
|
|
a knowledgeable one will know instantly what went wrong. * Case
|
|
insensitive matching of playlist file extensions. * Print the
|
|
address, port and mountpoint that Ezstream is actually trying to
|
|
connect to, instead of what the user supplied. That should make
|
|
it easier to spot reasons for connect failures (e.g. typos.)
|
|
Changes in urlParse(): * Let urlParse() allocate memory for
|
|
hostname and mountpoint, as it knows how much memory is actually
|
|
required. * Fix a buffer overflow of the tmpPort buffer by adding
|
|
checks and using safe string functions. * Let the caller print an
|
|
error message, instead of having the same printf() twice in
|
|
urlParse(). The streamPlaylist() function has been rewritten to
|
|
use the new playlist_*() routines. Apart from the added playlist
|
|
shuffle feature no functional change.
|
|
|
|
2007-02-25 00:35 moritz
|
|
|
|
* [r12551] configure.in:
|
|
Add check for geteuid(), which is better than checking for WIN32.
|
|
|
|
2007-02-25 00:25 moritz
|
|
|
|
* [r12550] src/ezstream.c:
|
|
Begin merging ezstream.c changes. This first batch includes: *
|
|
License reference and various #include cleanups and additions
|
|
that are required later. * Add new usage() and usageHelp()
|
|
functions (which already contain what's to come.) Move them close
|
|
to main() where getopt() is called. * New signal handler, which
|
|
now no longer uses printf(). printf() is not safe to use in
|
|
signal handlers. Use volatile sig_atomic_t types instead of ints
|
|
as flags to set in the handler. * Formatting and const'ifying of
|
|
WIN32-basename() and strrcmp(). Rearrange them so that the actual
|
|
"worker functions" are grouped together. * Add function
|
|
prototypes for those that are already up-to-date. * Rename
|
|
ReplaceString() to replaceString() for consistency with other
|
|
function names in Ezstream. * Prepare for portable *__progname
|
|
usage.
|
|
|
|
2007-02-24 23:26 moritz
|
|
|
|
* [r12549] src/configfile.c:
|
|
Merge new parseConfig() function. There were many changes, but
|
|
those are too cumbersome to merge separately. They are: * The
|
|
usual formatting nitpickings. * Don't leak memory in case of
|
|
duplicate entries. Instead make it an error and print a helpful
|
|
error message, with config file line number, to the user. *
|
|
Replace the manual cast to (const xmlChar *) with libxml2's
|
|
BAD_CAST. There probably won't be any UTF8 support in Ezstream
|
|
any time soon ... * Remove redundant strlen() check -
|
|
xmlNodeListGetString() never returns an empty string if
|
|
(cur->xmlChildrenNode != NULL). * Use xstrdup() instead of
|
|
malloc() + memset() + strcpy(). * Ensure that boolean
|
|
configration options are always either 1 or 0. * Ensure that path
|
|
names given via <filename /> do not exceed PATH_MAX. * Add
|
|
<shuffle /> configuration option for playlist shuffling.
|
|
|
|
2007-02-24 23:05 moritz
|
|
|
|
* [r12548] src/configfile.c:
|
|
Add function to free a configuration in case of an error.
|
|
|
|
2007-02-24 23:03 moritz
|
|
|
|
* [r12547] configure.in:
|
|
Fix typo in comment.
|
|
|
|
2007-02-24 22:56 moritz
|
|
|
|
* [r12546] src/configfile.c:
|
|
Replace three if-conditionals with one, both in
|
|
getFormatEncoder() and getFormatDecoder(), with prettier
|
|
formatting.
|
|
|
|
2007-02-24 22:50 moritz
|
|
|
|
* [r12545] src/configfile.c, src/configfile.h:
|
|
Const'ify configfile functions.
|
|
|
|
2007-02-24 22:25 moritz
|
|
|
|
* [r12544] src/configfile.c, src/configfile.h:
|
|
Add license reference to configfile.c, sync #includes with what
|
|
will be required later, getEZConfig() formatting and remove
|
|
unused printConfig() function.
|
|
|
|
2007-02-24 22:16 moritz
|
|
|
|
* [r12543] src/configfile.h:
|
|
Begin merging configfile.* changes by cleaning up the .h file:
|
|
Add license reference, remove prototype of nonexistent
|
|
getMetadataGrabber() function, and do some formatting.
|
|
|
|
2007-02-24 22:03 moritz
|
|
|
|
* [r12542] win32/Makefile.am:
|
|
Clean core and backup files in this directory as well. Only ~2500
|
|
lines of diffs left to merge.
|
|
|
|
2007-02-24 22:01 moritz
|
|
|
|
* [r12541] src/ezsignals.h:
|
|
Commit header with three macros that help with signal handling.
|
|
Will be actually used later. Now, all new files are in.
|
|
|
|
2007-02-24 21:59 moritz
|
|
|
|
* [r12540] configure.in:
|
|
Let the configure script set a (hard-coded, for now) examples
|
|
installation directory. This will be made configurable later.
|
|
|
|
2007-02-24 21:50 moritz
|
|
|
|
* [r12539] configure.in:
|
|
Add several checks that we need now, i.e. very soon.
|
|
|
|
2007-02-24 21:46 moritz
|
|
|
|
* [r12538] configure.in:
|
|
AM_CONFIG_HEADER -> AC_CONFIG_HEADERS, and move config.h into
|
|
src/.
|
|
|
|
2007-02-24 21:44 moritz
|
|
|
|
* [r12537] configure.in:
|
|
Autoconf 2.61 has a nice macro AC_USE_SYSTEM_EXTENSIONS. Use it,
|
|
depend on autoconf-2.61 for it and remove the annoying
|
|
_GNU_SOURCE and _XOPEN_SOURCE ... dung. Autoconf takes care of
|
|
this, and even checks for more useful stuff for us.
|
|
|
|
2007-02-24 21:37 moritz
|
|
|
|
* [r12536] configure.in:
|
|
Generate a Makefile in doc/, and switch to AC_CONFIG_FILES.
|
|
|
|
2007-02-24 21:34 moritz
|
|
|
|
* [r12535] configure.in:
|
|
Ezstream does not need libtool, so remove it. Remove other
|
|
redundant configure checks as well: AC_PROG_CC and AC_HEADER_STDC
|
|
are automatically checked in packages written in C, no need to do
|
|
it twice. This shaves a lot off configure runtime.
|
|
|
|
2007-02-24 21:29 moritz
|
|
|
|
* [r12534] configure.in:
|
|
Start to incrementally merge configure.in changes by simply
|
|
shuffling code around a bit. No functional change, yet.
|
|
|
|
2007-02-24 21:19 moritz
|
|
|
|
* [r12533] Makefile.am:
|
|
Hook up doc/ with the build, depend on automake 1.9 and remove
|
|
dist-zip for now. The latter will come back after testing on
|
|
Windows has been done.
|
|
|
|
2007-02-24 21:16 moritz
|
|
|
|
* [r12532] autogen.sh:
|
|
Replace the autogen behemoth with something much simpler.
|
|
AC_PREREQ and AUTOMAKE_OPTIONS already take care of version
|
|
checks.
|
|
|
|
2007-02-24 21:12 moritz
|
|
|
|
* [r12531] conf/Makefile.am, conf/ezstream_mp3.xml,
|
|
conf/ezstream_reencoding_example_mp3.xml,
|
|
conf/ezstream_reencoding_example_theora.xml,
|
|
conf/ezstream_reencoding_example_vorbis.xml,
|
|
conf/ezstream_vorbis.xml:
|
|
Clean up and install example configuration files.
|
|
|
|
2007-02-24 21:11 moritz
|
|
|
|
* [r12530] README:
|
|
Commit rewritten README file.
|
|
|
|
2007-02-24 20:59 moritz
|
|
|
|
* [r12529] AUTHORS:
|
|
Remove AUTHORS. Credits are in the man page.
|
|
|
|
2007-02-24 20:58 moritz
|
|
|
|
* [r12528] INSTALL:
|
|
Add INSTALL file for those not familiar with the configure+make
|
|
dance. From autoconf-2.61.
|
|
|
|
2007-02-24 20:57 moritz
|
|
|
|
* [r12527] src/Makefile.am, src/strlcat.c, src/strlcpy.c,
|
|
src/strlfctns.h:
|
|
Add files with safe strlc*() string functions, and hook all new
|
|
files into Makefile.am. Also let "make clean" clean up coredumps
|
|
and editor backup files.
|
|
|
|
2007-02-24 20:52 moritz
|
|
|
|
* [r12526] doc, doc/Makefile.am, doc/ezstream.1.in:
|
|
Add ezstream man page.
|
|
|
|
2007-02-24 20:50 moritz
|
|
|
|
* [r12525] src/playlist.c, src/playlist.h:
|
|
Add new playlist handling functions.
|
|
|
|
2007-02-24 20:49 moritz
|
|
|
|
* [r12524] src/util.c, src/util.h:
|
|
Add new utility functions, for memory management. These do The
|
|
Right Thing and never return NULL.
|
|
|
|
2007-02-24 18:55 moritz
|
|
|
|
* [r12521] configure.in:
|
|
Begin to incrementally merge my changes to Ezstream by bumping
|
|
the version number and shifting blame to me. This should keep
|
|
most of the history in my local CVS repository. There may be
|
|
temporary breakages where it doesn't build or package until I'm
|
|
done.
|
|
|
|
2005-12-14 21:40 oddsock
|
|
|
|
* [r10593] win32/Makefile.am:
|
|
forgot to add the inno setup installer to the dist
|
|
|
|
2005-12-14 21:16 oddsock
|
|
|
|
* [r10592] win32/ezstream.iss:
|
|
version bump
|
|
|
|
2005-12-14 21:14 oddsock
|
|
|
|
* [r10590] ChangeLog:
|
|
added changelog
|
|
|
|
2005-12-14 21:13 oddsock
|
|
|
|
* [r10589] conf/Makefile.am, configure.in, src/ezstream.c:
|
|
added some reconnect logic fixed a buffer overflow on large
|
|
id3tags use pclose for popen'd file handles
|
|
|
|
2005-01-05 00:38 oddsock
|
|
|
|
* [r8612] README, conf/ezstream_m3u.xml, conf/ezstream_mp3.xml,
|
|
conf/ezstream_reencoding_example.xml,
|
|
conf/ezstream_reencoding_example_mp3.xml,
|
|
conf/ezstream_reencoding_example_theora.xml,
|
|
conf/ezstream_reencoding_example_vorbis.xml,
|
|
conf/ezstream_vorbis.xml, configure.in, src/ezstream.c,
|
|
win32/ezstream.dsp, win32/ezstream.dsw, win32/ezstream.iss:
|
|
cleanup of config files fixed reencoding bug on win32 bump to
|
|
version 0.2.0
|
|
|
|
2004-12-22 01:49 oddsock
|
|
|
|
* [r8519] src/ezstream.c:
|
|
add passthorough support for unknown types
|
|
|
|
2004-07-19 03:48 oddsock
|
|
|
|
* [r7171] src/configfile.c, win32/ezstream.dsp, win32/ezstream.iss:
|
|
some win32 compilation fixes
|
|
|
|
2004-07-19 03:12 oddsock
|
|
|
|
* [r7170] README, conf/Makefile.am,
|
|
conf/ezstream_reencoding_example.xml, configure.in,
|
|
src/configfile.c, src/configfile.h, src/ezstream.c,
|
|
win32/ezstream.dsp:
|
|
Added reencoding capabilities to ezstream.
|
|
|
|
2004-07-16 04:02 oddsock
|
|
|
|
* [r7152] win32/ezstream.dsp:
|
|
|
|
|
|
2004-07-12 19:13 oddsock
|
|
|
|
* [r7103] src/configfile.c, src/configfile.h, src/ezstream.c:
|
|
support for theora streams
|
|
|
|
2004-04-21 13:48 oddsock
|
|
|
|
* [r6563] configure.in, src/.deps, src/ezstream.c:
|
|
added ability to send a signal (SIGHUP) which will re-read the
|
|
current playlist (m3u) that is being processed. When this
|
|
happens, ezstream will pick up from the last track that was
|
|
played.
|
|
|
|
2004-02-02 04:56 oddsock
|
|
|
|
* [r5806] README:
|
|
stdin now working :)
|
|
|
|
2004-02-02 04:39 oddsock
|
|
|
|
* [r5805] aclocal.m4, configure.in:
|
|
* version bump * remove unneeded file
|
|
|
|
2004-02-02 04:37 oddsock
|
|
|
|
* [r5804] src/ezstream.c, win32/ezstream.dsp, win32/ezstream.iss:
|
|
* set read mode to binary for stdin on win32 * add libXML to
|
|
project file * bump version number
|
|
|
|
2004-01-30 17:19 oddsock
|
|
|
|
* [r5800] ., AUTHORS, COPYING, Makefile.am, README, aclocal.m4,
|
|
autogen.sh, conf, conf/Makefile.am, conf/ezstream_m3u.xml,
|
|
conf/ezstream_mp3.xml, conf/ezstream_vorbis.xml, configure.in,
|
|
m4, m4/ac_config_libconfig_in.m4, m4/acx_pthread.m4, m4/ogg.m4,
|
|
m4/shout.m4, m4/vorbis.m4, m4/xiph_compiler.m4, m4/xiph_curl.m4,
|
|
m4/xiph_net.m4, m4/xiph_path_python.m4, m4/xiph_types.m4,
|
|
m4/xiph_xml2.m4, src, src/.deps, src/.deps/configfile.Po,
|
|
src/.deps/ezstream.Po, src/Makefile.am, src/configfile.c,
|
|
src/configfile.h, src/ezstream.c, src/getopt.c, src/getopt.h,
|
|
win32, win32/Makefile.am, win32/ezstream.dsp, win32/ezstream.dsw,
|
|
win32/ezstream.iss:
|
|
Initial revision
|
|
|