Changeset 1674

Show
Ignore:
Timestamp:
09/28/09 05:36:17 (15 years ago)
Author:
jwoithe
Message:

RME: define some packet dimensional details

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.cpp

    r1672 r1674  
    4242#include "libutil/ByteSwap.h" 
    4343 
     44// This is to pick up the RME_MODEL_* constants.  There's probably a better 
     45// way ... 
     46#include "../../rme/rme_avdevice.h" 
     47 
    4448#include <cstring> 
    4549#include <math.h> 
     
    5660#define get_bits(_d,_start,_len) (((_d)>>((_start)-(_len)+1)) & ((1<<(_len))-1)) 
    5761 
    58 RmeReceiveStreamProcessor::RmeReceiveStreamProcessor(FFADODevice &parent, unsigned int event_size) 
     62RmeReceiveStreamProcessor::RmeReceiveStreamProcessor(FFADODevice &parent,  
     63  unsigned int model, unsigned int event_size) 
    5964    : StreamProcessor(parent, ePT_Receive) 
     65    , m_rme_model( model ) 
    6066    , m_event_size( event_size ) 
    6167    , mb_head ( 0 ) 
     
    6773RmeReceiveStreamProcessor::getMaxPacketSize() { 
    6874    int framerate = m_Parent.getDeviceManager().getStreamProcessorManager().getNominalRate(); 
    69     return framerate<=48000?616:(framerate<=96000?1032:1160); 
     75    if (m_rme_model == Rme::RME_MODEL_FIREFACE800) 
     76        return 8 + (framerate<=48000?784:(framerate<=96000?1200:1200)); 
     77    else 
     78        return 8 + (framerate<=48000?504:(framerate<=96000?840:1000)); 
    7079} 
    7180 
     
    7382RmeReceiveStreamProcessor::getNominalFramesPerPacket() { 
    7483    int framerate = m_Parent.getDeviceManager().getStreamProcessorManager().getNominalRate(); 
    75     return framerate<=48000?8:(framerate<=96000?16:32); 
     84    return framerate<=48000?7:(framerate<=96000?15:25); 
    7685} 
    7786 
  • trunk/libffado/src/libstreaming/rme/RmeReceiveStreamProcessor.h

    r1672 r1674  
    5757     *                  (midi-muxed is only one stream) 
    5858     */ 
    59     RmeReceiveStreamProcessor(FFADODevice &parent, unsigned int event_size); 
     59    RmeReceiveStreamProcessor(FFADODevice &parent, unsigned int model, unsigned int event_size); 
    6060    virtual ~RmeReceiveStreamProcessor() {}; 
    6161 
     
    8484    int decodeRmeMidiEventsToPort(RmeMidiPort *, quadlet_t *data, unsigned int offset, unsigned int nevents); 
    8585 
     86    unsigned int m_rme_model; 
    8687    /* 
    8788     * An iso packet mostly consists of multiple events.  m_event_size 
  • trunk/libffado/src/libstreaming/rme/RmeTransmitStreamProcessor.cpp

    r1672 r1674  
    4444#include "libutil/ByteSwap.h" 
    4545 
     46// This is to pick up the RME_MODEL_* constants.  There's probably a better 
     47// way ... 
     48#include "../../rme/rme_avdevice.h" 
     49 
    4650#include <cstring> 
    4751#include <assert.h> 
     
    6771 
    6872/* transmit */ 
    69 RmeTransmitStreamProcessor::RmeTransmitStreamProcessor(FFADODevice &parent, unsigned int event_size ) 
     73RmeTransmitStreamProcessor::RmeTransmitStreamProcessor(FFADODevice &parent,  
     74  unsigned int model, unsigned int event_size ) 
    7075        : StreamProcessor(parent, ePT_Transmit ) 
     76        , m_rme_model( model) 
    7177        , m_event_size( event_size ) 
    7278        , m_tx_dbc( 0 ) 
  • trunk/libffado/src/libstreaming/rme/RmeTransmitStreamProcessor.h

    r1672 r1674  
    5555     * Create a RME transmit StreamProcessor 
    5656     */ 
    57     RmeTransmitStreamProcessor(FFADODevice &parent, unsigned int event_size); 
     57    RmeTransmitStreamProcessor(FFADODevice &parent,  
     58                               unsigned int model, unsigned int event_size); 
    5859    virtual ~RmeTransmitStreamProcessor() {}; 
    5960 
     
    106107                       unsigned int offset, unsigned int nevents); 
    107108 
     109    unsigned int m_rme_model; 
     110 
    108111    /* 
    109112     * An iso packet mostly consists of multiple events.  m_event_size