I''m now mostly happy now with behavior the volsung_kc_20011011 branch of ogg123. It has a much streamlined buffer setup and simplified streaming code. I still plan to continue reworking the innards, but the latest code in CVS should work. Please test: cvs co -r volsung_kc_20011011 vorbis-tools cd vorbis-tools/ogg123 make debug Note that this branch has some autoconf/automake issues that have been fixed on HEAD. Don''t worry about them for now. If you want to test streaming, I''ve got an icecast2 server running at: http://volsung.dhcp.asu.edu:8000/test.ogg (This is temporary, so don''t be surprised if it disappears in a week.) Unless someone can segfault or deadlock this new code, I''m going to merge it on the mainline Friday. Thanks! --- Stan Seibert --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to ''vorbis-dev-request@xiph.org'' containing only the word ''unsubscribe'' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
<volsung@asu.edu> wrote:> Please test: > > cvs co -r volsung_kc_20011011 vorbis-tools > cd vorbis-tools/ogg123 > make debugbuffer.c: In function `_buffer_thread_cleanup'': buffer.c:59: syntax error before `)'' I guess there''s something wrong with this funky DEBUG() macro. Okay, #undef DEBUG_BUFFER, trying again. You will need to add some autoconf glue to deal with pthreads. Okay, added -pthreads, trying again. ogg123.o: Undefined symbol `_on_exit'' referenced from text segment collect2: ld returned 1 exit status Well, on_exit() doesn''t appear to be defined anywhere. No dice. [OpenBSD 3.0/sparc] -- Christian "naddy" Weisgerber naddy@mips.inka.de --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to ''vorbis-dev-request@xiph.org'' containing only the word ''unsubscribe'' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
On Fri, 23 Nov 2001, Christian Weisgerber wrote:> <volsung@asu.edu> wrote: > > > Please test: > > > > cvs co -r volsung_kc_20011011 vorbis-tools > > cd vorbis-tools/ogg123 > > make debug > > buffer.c: In function `_buffer_thread_cleanup'': > buffer.c:59: syntax error before `)'' > > I guess there''s something wrong with this funky DEBUG() macro. > Okay, #undef DEBUG_BUFFER, trying again.Whoops. I should have turned that off.> You will need to add some autoconf glue to deal with pthreads. > Okay, added -pthreads, trying again.Okay, fixed that in CVS.> ogg123.o: Undefined symbol `_on_exit'' referenced from text segment > collect2: ld returned 1 exit status > > Well, on_exit() doesn''t appear to be defined anywhere. No dice.Ahh, I just discovered that on_exit() is a SunOS 4 function which glibc supports for compatibility. atexit() should be used everywhere else. I have fixed autoconf to detect this (hopefully). Also in CVS. Thanks for catching this! Hopefully, now things will work. --- Stan Seibert --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to ''vorbis-dev-request@xiph.org'' containing only the word ''unsubscribe'' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
<volsung@asu.edu> wrote:> Thanks for catching this! Hopefully, now things will work.Some build issues aside, this lastest version works for me on OpenBSD 3.0-current i386 and sparc. I have not tested streaming since I haven''t set up a server here and my external bandwidth (64kbit/s) is probably insufficient. Shouldn''t the time status only be displayed with -v? Also, it is updated awfully often. I started ogg123 on a 9600 bit/s console terminal and it wouldn''t play correctly because it couldn''t output the time updates fast enough. -- Christian "naddy" Weisgerber naddy@mips.inka.de --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to ''vorbis-dev-request@xiph.org'' containing only the word ''unsubscribe'' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
<volsung@asu.edu> wrote:> > You will need to add some autoconf glue to deal with pthreads. > > Okay, added -pthreads, trying again. > > Okay, fixed that in CVS.Insufficiently. BSD uses "-pthread" (sic) on the compiler command line, which makes cc link against libc_r instead of libc. I''ll see if I can find a proper autoconf fragment for this. Since you replaced the mmap() buffering code, you can also remove the AC_FUNC_SMMAP check and its definition in acinclude.m4. For consistency''s sake, I suggest to pattern the curl test after the ao/ogg/vorbis one. --with-curl-prefix=... -- Christian "naddy" Weisgerber naddy@mips.inka.de --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to ''vorbis-dev-request@xiph.org'' containing only the word ''unsubscribe'' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
Christian Weisgerber <naddy@mips.inka.de> wrote:> > > You will need to add some autoconf glue to deal with pthreads. > > > Okay, added -pthreads, trying again. > > > > Okay, fixed that in CVS. > > Insufficiently. [...] I''ll see if I can find a proper autoconf > fragment for this.I can''t find a canonical solution, but how about something like this? AC_CHECK_LIB(pthread, pthread_mutex_init, THREAD_LIBS="-lpthread", LIBS="$LIBS -pthread" AC_CHECK_FUNC(pthread_mutex_init, THREAD_LIBS="-pthread", AC_MSG_ERROR(pthread library needed!))) -- Christian "naddy" Weisgerber naddy@mips.inka.de --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to ''vorbis-dev-request@xiph.org'' containing only the word ''unsubscribe'' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
> I can''t find a canonical solution, but how about something like > this? > > AC_CHECK_LIB(pthread, pthread_mutex_init, THREAD_LIBS="-lpthread", > LIBS="$LIBS -pthread" > AC_CHECK_FUNC(pthread_mutex_init, THREAD_LIBS="-pthread", > AC_MSG_ERROR(pthread library needed!)))Um, -pthread should go in CFLAGS. jack. --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to ''vorbis-dev-request@xiph.org'' containing only the word ''unsubscribe'' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
<volsung@asu.edu> wrote:> I''m now mostly happy now with behavior the volsung_kc_20011011 branch of > ogg123.There''s something wrong in the option handling. $ ogg123 -d raw -f foo ... ... Error: raw requires an output filename to be specified with -f. $ ogg123 -d esd -o host:foo ... ... Error: Cannot open device esd. However, with default_driver=esd in ~/.libao this $ ogg123 -o host:foo ... works fine. -- Christian "naddy" Weisgerber naddy@mips.inka.de --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to ''vorbis-dev-request@xiph.org'' containing only the word ''unsubscribe'' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
Christian Weisgerber <naddy@mips.inka.de> wrote:> Some build issues aside, this lastest version works for me on OpenBSD > 3.0-current i386 and sparc.Ugh. I guess I should actually activate buffering with -b N before making such a statement. i386: works fine sparc: dumps core immediately That happens to agree with my general expectations for a pthreads-based program. -- Christian "naddy" Weisgerber naddy@mips.inka.de --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to ''vorbis-dev-request@xiph.org'' containing only the word ''unsubscribe'' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.
Jack Moffitt <jack@xiph.org> wrote:> Um, -pthread should go in CFLAGS.I guess you are right, but I wish I could find this documented anywhere. Miod Vallat <miod@openbsd.org> suggests this general fragment, which looks very good indeed: AC_CACHE_CHECK( [if compiler recognizes -pthread], myapp_cv_gcc_pthread, ac_save_CFLAGS=$CFLAGS CFLAGS="$CFLAGS -pthread" AC_LANG_SAVE AC_LANG_C AC_TRY_LINK([#include <pthread.h>], [void *p = pthread_create;], myapp_cv_gcc_pthread=yes, myapp_cv_gcc_pthread=no ) AC_LANG_RESTORE CFLAGS=$ac_save_CFLAGS ) if test $myapp_cv_gcc_pthread = yes then myapp_threads="" CFLAGS="$CFLAGS -pthread" else dnl AC_CHECK_HEADERS(pthread.h) unreliable AC_CHECK_LIB(pthread,pthread_create,myapp_threads=-lpthread, [AC_CHECK_LIB(c_r,pthread_create,myapp_threads=-lc_r)]) fi -- Christian "naddy" Weisgerber naddy@mips.inka.de --- >8 ---- List archives: http://www.xiph.org/archives/ Ogg project homepage: http://www.xiph.org/ogg/ To unsubscribe from this list, send a message to ''vorbis-dev-request@xiph.org'' containing only the word ''unsubscribe'' in the body. No subject is needed. Unsubscribe messages sent to the list will be ignored/filtered.