Changeset 540

Show
Ignore:
Timestamp:
08/21/07 08:10:16 (14 years ago)
Author:
ppalmers
Message:

improve midi test util

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/echoaudio/tests/streaming/testmidistreaming1.c

    r524 r540  
    128128 
    129129int encode_midi_bytes(ffado_midi_port_t *port, unsigned char *byte_buff, int len) { 
    130         return 0; 
     130    static int cnt=0; 
     131    cnt++; 
     132    if (cnt>64) { 
     133        *byte_buff=0xFF; 
     134        return 1; 
     135    } 
     136    return 0; 
    131137} 
    132138 
     
    134140{ 
    135141 
    136         #define PERIOD_SIZE 512 
     142        #define PERIOD_SIZE 1024 
    137143 
    138144        int samplesread=0, sampleswritten=0; 
     
    159165        ffado_options_t dev_options; 
    160166 
    161         dev_options.sample_rate=-1; // -1 = detect from discovery 
     167        dev_options.sample_rate=48000; // -1 = detect from discovery 
    162168        dev_options.period_size=PERIOD_SIZE; 
    163169 
    164170        dev_options.nb_buffers=3; 
    165171 
    166         dev_options.port=1
     172        dev_options.port=0
    167173        dev_options.node_id=-1; 
    168174         
    169175        dev_options.realtime=0; 
    170176        dev_options.packetizer_priority=60; 
     177         
     178        dev_options.directions=0; 
    171179         
    172180        dev_options.verbose=5; 
     
    353361         
    354362        // start the streaming layer 
     363        ffado_streaming_prepare(dev); 
    355364        start_flag = ffado_streaming_start(dev); 
    356365 
     
    384393                                break; 
    385394                        case ffado_stream_type_midi: 
    386                                 samplesread=ffado_streaming_read(dev, i, audiobuffers_in[i], PERIOD_SIZE); 
     395                                samplesread=ffado_streaming_read(dev, i, audiobuffers_in[i], 64); 
    387396                                quadlet_t *buff=(quadlet_t *)audiobuffers_in[i]; 
     397                                if (samplesread) printf("RECV (CH %02X): ", i); 
    388398                                for (s=0;s<samplesread;s++) { 
    389399                                        quadlet_t *byte=(buff+s) ; 
    390 //                                    printf("%08X ",*byte); 
     400                                      printf("%08X ",*byte); 
    391401                                        decode_midi_byte (midi_in_portmap[i], (*byte) & 0xFF); 
    392402                                } 
     403                                if (samplesread) printf("\n"); 
    393404                                if(samplesread>0) { 
    394405                                        fprintf(fid_in[i], "---- Period read (%d samples) ----\n",samplesread); 
     
    425436                                 
    426437                                sampleswritten=encode_midi_bytes(midi_out_portmap[i], byte_buff, max_midi_bytes_to_write); 
    427                                  
     438                                if (sampleswritten) printf("SEND (CH %02X): ", i); 
    428439                                for(b=0;b<sampleswritten;b++) { 
    429440                                        ffado_sample_t tmp_event=*(byte_buff+b); 
     441                                        printf("%08X ",*(byte_buff+b)); 
    430442                                        ffado_streaming_write(dev, i, &tmp_event, 1); 
    431443                                } 
    432                                  
    433                                  
     444                                if (sampleswritten) printf("\n"); 
     445 
    434446                                fprintf(fid_out[i], "---- Period write (%d samples) ----\n",sampleswritten); 
    435447                                hexDumpToFile(fid_out[i],(unsigned char*)buff,sampleswritten*sizeof(ffado_sample_t));