@@ -13,18 +13,21 @@ extern "C" {
13
13
namespace avtranscoder
14
14
{
15
15
16
+ // / @brief Description of a number of samples, which corresponds to one video frame
16
17
class AvExport AudioFrameDesc
17
18
{
18
19
public:
19
20
AudioFrameDesc ( const size_t sampleRate = 0 , const size_t channels = 0 , const AVSampleFormat sampleFormat = AV_SAMPLE_FMT_NONE )
20
21
: _sampleRate( sampleRate )
21
22
, _channels( channels )
22
23
, _sampleFormat( sampleFormat )
24
+ , _fps( 25 . )
23
25
{}
24
26
AudioFrameDesc ( const size_t sampleRate, const size_t channels, const std::string& sampleFormat )
25
27
: _sampleRate( sampleRate )
26
28
, _channels( channels )
27
29
, _sampleFormat( av_get_sample_fmt( sampleFormat.c_str() ) )
30
+ , _fps( 25 . )
28
31
{}
29
32
30
33
size_t getSampleRate () const { return _sampleRate; }
@@ -35,6 +38,7 @@ class AvExport AudioFrameDesc
35
38
const char * formatName = av_get_sample_fmt_name ( _sampleFormat );
36
39
return formatName ? std::string ( formatName ) : " unknown sample format" ;
37
40
}
41
+ double getFps () const { return _fps; }
38
42
39
43
size_t getDataSize () const
40
44
{
@@ -52,6 +56,7 @@ class AvExport AudioFrameDesc
52
56
void setChannels ( const size_t channels ) { _channels = channels; }
53
57
void setSampleFormat ( const std::string& sampleFormatName ) { _sampleFormat = av_get_sample_fmt ( sampleFormatName.c_str () ); }
54
58
void setSampleFormat ( const AVSampleFormat sampleFormat ) { _sampleFormat = sampleFormat; }
59
+ void setFps ( const double fps ) { _fps = fps; }
55
60
56
61
void setParameters ( const ProfileLoader::Profile& profile )
57
62
{
@@ -63,6 +68,7 @@ class AvExport AudioFrameDesc
63
68
size_t _sampleRate;
64
69
size_t _channels;
65
70
AVSampleFormat _sampleFormat;
71
+ double _fps;
66
72
};
67
73
68
74
class AvExport AudioFrame : public Frame
0 commit comments