Ignore:
Timestamp:
11/17/06 21:05:30 (17 years ago)
Author:
r2d
Message:
  • put back seeking
File:
1 edited

Legend:

Unmodified
Added
Removed
  • xmms-musepack/branches/r2d/src/libmpc.cpp

    r127 r144  
    801801
    802802        int counter = 2 * track.sampleFreq / 3;
    803         unsigned status = 1;
     803        int status = 0;
    804804    while (isAlive())
    805805    {
    806806        if (getOffset() != -1)
    807807        {
    808 //             mpc_decoder_seek_seconds(decoder, mpcDecoder.offset);
     808                        mpc_demux_seek_second(demux, mpcDecoder.offset);
    809809            setOffset(-1);
     810                        status = 0;
    810811        }
    811812
     
    813814        short iPlaying = MpcPlugin.output->buffer_playing()? 1 : 0;
    814815        int iFree = MpcPlugin.output->buffer_free();
    815         if (!mpcDecoder.isPause &&  iFree >= ((1152 * 4) << iPlaying) && status != 0)
     816        if (!mpcDecoder.isPause &&  iFree >= ((1152 * 4) << iPlaying) && status != -1)
    816817        {
    817818                        status = processBuffer(sampleBuffer, xmmsBuffer, *demux);
     
    829830        {
    830831                        lockRelease();
    831                         if (!mpcDecoder.isPause && status == 0 && MpcPlugin.output->output_time() == 0)
     832                        if (!mpcDecoder.isPause && status == -1 && MpcPlugin.output->output_time() == 0)
    832833                                break;
    833834            xmms_usleep(100000);
     
    845846        info.buffer = sampleBuffer;
    846847        mpc_demux_decode(&demux, &info);
     848
     849        if (info.bits == -1) return -1; // end of stream
     850
    847851    copyBuffer(sampleBuffer, xmmsBuffer, info.samples);
    848852
Note: See TracChangeset for help on using the changeset viewer.