Skip to content

Commit 4e36bc9

Browse files
get sample_rate and channels from audio profiles
1 parent 194a95c commit 4e36bc9

File tree

2 files changed

+21
-15
lines changed

2 files changed

+21
-15
lines changed

src/AvTranscoder/EssenceStream/OutputAudio.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -169,7 +169,9 @@ bool OutputAudio::encodeFrame( DataStream& codedFrame )
169169
void OutputAudio::setProfile( Profile::ProfileDesc& desc )
170170
{
171171
_audioDesc.setAudioCodec( desc["codec"] );
172-
_audioDesc.setAudioParameters( 48000, 1, av_get_sample_fmt( desc["sample_fmt"].c_str() ) );
172+
size_t sample_rate = atoi( desc["sample_rate"].c_str() );
173+
size_t channels = atoi( desc["channels"].c_str() );
174+
_audioDesc.setAudioParameters( sample_rate, channels, av_get_sample_fmt( desc["sample_fmt"].c_str() ) );
173175

174176
setup();
175177
}

src/AvTranscoder/Profiles/Wave.hpp

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,30 @@ namespace avtranscoder
66

77
void loadWave( Profile::ProfilesDesc& profiles )
88
{
9-
Profile::ProfileDesc wave24bits;
9+
Profile::ProfileDesc wave24b48kMono;
1010

11-
wave24bits[ Profile::avProfileIdentificator ] = "wave24bits";
12-
wave24bits[ Profile::avProfileIdentificatorHuman ] = "Wave 24bits";
13-
wave24bits[ Profile::avProfileType ] = Profile::avProfileTypeAudio;
11+
wave24b48kMono[ Profile::avProfileIdentificator ] = "wave24b48kMono";
12+
wave24b48kMono[ Profile::avProfileIdentificatorHuman ] = "Wave 24bits 48kHz mono";
13+
wave24b48kMono[ Profile::avProfileType ] = Profile::avProfileTypeAudio;
1414

15-
wave24bits[ "codec" ] = "pcm_s24le";
16-
wave24bits[ "sample_fmt" ] = "s32";
15+
wave24b48kMono[ "codec" ] = "pcm_s24le";
16+
wave24b48kMono[ "sample_fmt" ] = "s32";
17+
wave24b48kMono[ "sample_rate" ] = "48000";
18+
wave24b48kMono[ "channels" ] = "1";
1719

18-
Profile::ProfileDesc wave16bits;
20+
Profile::ProfileDesc wave16b48kMono;
1921

20-
wave16bits[ Profile::avProfileIdentificator ] = "wave16bits";
21-
wave16bits[ Profile::avProfileIdentificatorHuman ] = "Wave 16bits";
22-
wave16bits[ Profile::avProfileType ] = Profile::avProfileTypeAudio;
22+
wave16b48kMono[ Profile::avProfileIdentificator ] = "wave16b48kMono";
23+
wave16b48kMono[ Profile::avProfileIdentificatorHuman ] = "Wave 16bits 48kHz mono";
24+
wave16b48kMono[ Profile::avProfileType ] = Profile::avProfileTypeAudio;
2325

24-
wave16bits[ "codec" ] = "pcm_s16le";
25-
wave16bits[ "sample_fmt" ] = "s16";
26+
wave16b48kMono[ "codec" ] = "pcm_s16le";
27+
wave16b48kMono[ "sample_fmt" ] = "s16";
28+
wave16b48kMono[ "sample_rate" ] = "48000";
29+
wave16b48kMono[ "channels" ] = "1";
2630

27-
profiles.push_back( wave24bits );
28-
profiles.push_back( wave16bits );
31+
profiles.push_back( wave24b48kMono );
32+
profiles.push_back( wave16b48kMono );
2933
}
3034

3135
}

0 commit comments

Comments
 (0)