summaryrefslogtreecommitdiffstats
path: root/mpeglib/lib/output/audioData.h
blob: ff6c824222f31df35661ae22e385e65512790a87 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
/*
  describes a paket oriented audioData, because Im fed up
  Copyright (C) 1999  Martin Vogt

  This program is free software; you can redistribute it and/or modify
  it under the terms of the GNU Library General Public License as published by
  the Free Software Foundation.

  For more information look at the file COPYRIGHT in this package

 */



#ifndef __AUDIODATA_H
#define __AUDIODATA_H

#include "../util/timeStamp.h"
#include "audioTime.h"


#define _AUDIODATA_MAX_SIZE      8192


/**
   My attempt to encapsulate all this stupid things which deals
   with timing, synchronisation, length, stamps and everything
   unimaginable else.
*/



class AudioData {


  AudioTime* audioTime;
  TimeStamp* start;
  TimeStamp* end;
  TimeStamp* writeStamp;
 
  int pcmLen;

 public:
  AudioData();
  ~AudioData();
  
  void copyTo(AudioData* dest);

  
  int getPCMLen();
  void setPCMLen(int pcmLen);

  void setAudioTime(AudioTime* audioTime);
  AudioTime* getAudioTime();

  void setStart(TimeStamp* start);
  TimeStamp* getStart();
  
  void setWrite(TimeStamp* writeStamp);
  TimeStamp* getWrite();
  

  void setEnd(TimeStamp* end);
  TimeStamp* getEnd();

  void print();
};
#endif