[Vorbis-dev] ogg123 - remote control interface

Conrad Parker conrad at metadecks.org
Tue Dec 19 21:03:19 PST 2006


Hi Honza,

I have applied the patch you sent to svn trunk in changeset:12228.

As for the http streaming, ogg123 will be configured to build without
HTTP streaming support if you do not have the libcurl development
libraries/headers installed. So, check that you have the libcurl-dev
package installed for your distro (and whatever else it depends on,
such as ssl libs and so on) when you run ./configure.

cheers,

Conrad.

On 20/12/06, ""-+:cundrak"@mail.bluetone.cz"
<""-+:cundrak"@mail.bluetone.cz"> wrote:
> Hi Conrad, I have checked the svn version and found out few bugs in the
> interface. Check out the patch I sent you. I made these changes:
>
> - when a vorbis file is playing and you try to load another one, the
> interface sent @P 0, that means stop, I comented out that code.
>
> - when a vorbis file is playing and you send stop, the interface just
> stopped playing, now it also sends @P 0, there is probably some issue
> with stopping, because when I issued STOP and then QUIT, the interface
> hangs....
>
> - when a vorbis file starts to play, the interface sends @P 2 (playing)
>
> The stop output should be also probably sent when EOF, but thats not
> happening, it doesn't affect my interface, but might affect others,
> because I think mpg123 send's this. Ask your friend to test it with the
> mpg123 front end and let's see. Otherwise great job.
>
> Another thing I found out is, that the SVN version can't HTTP stream,
> but don't know if it's my build bug, or something has been removed from
> the code. I'll investigate this.
>
> Honza
>
>
> --- vorbis-tools-svn/ogg123/remote.c    2006-12-18 11:31:30.000000000 +0100
> +++ vorbis-tools-devel/ogg123/remote.c  2006-12-19 16:35:04.000000000 +0100
> @@ -309,6 +309,7 @@ void remote_mainloop(void) {
>
>        send_msg("I %s", fname);
>        send_msg("S 0.0 0 00000 xxxxxx 0 0 0 0 0 0 0 0");
> +      send_msg("P 2");
>        pthread_mutex_lock(&main_lock);
>        setstatus(PLAY);
>        s = getstatus();
> @@ -334,17 +335,18 @@ void remote_mainloop(void) {
>        s = getstatus();
>        pthread_mutex_unlock(&main_lock);
>
> -      if (s == NEXT) {
> +/* don't know why this was here, sending "play stoped" on NEXT wasn't good idea... */
> +//      if (s == NEXT) {
>
>             /* Send "play stopped" */
> -        send_msg("P 0");
> -        send_log("P 0");
> -      } else {
> +//        send_msg("P 0");
> +//        send_log("P 0");
> +//      } else {
>
>             /* Send "play stopped at eof" */
> -        send_msg("P 0 EOF");
> -        send_log("P 0 EOF");
> -      }
> +//        send_msg("P 0 EOF");
> +//        send_log("P 0 EOF");
> +//      }
>
>      }
>      else {
> @@ -404,6 +406,10 @@ int remote_playloop(void) {
>      send_msg("P 2");
>    }
>
> +    /* Send stop msg to the frontend */
> +    /* this probably should be done after the audio buffer is flushed and no audio is actually playing, but don't know how */
> +  if ((s == STOP) || (s == QUIT)) send_msg("P 0");
> +
>    send_log("playloop exit s=%d", s);
>
>    return ((s == NEXT) || (s == STOP) || (s == QUIT));
>
>


More information about the Vorbis-dev mailing list