MCPcopy Create free account
hub / github.com/clangen/musikcube / Transcode

Method Transcode

src/plugins/server/Transcoder.cpp:173–194  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

171}
172
173IDataStream* Transcoder::Transcode(
174 Context& context,
175 const std::string& uri,
176 size_t bitrate,
177 const std::string& format)
178{
179 if (context.prefs->GetBool(
180 prefs::transcoder_synchronous.c_str(),
181 defaults::transcoder_synchronous))
182 {
183 return TranscodeAndWait(context, getEncoder(context, format), uri, bitrate, format);
184 }
185
186 /* on-demand is the default. however, on-demand transcoding is only available
187 for `IStreamingEncoder` types. */
188 IStreamingEncoder* audioStreamEncoder = getTypedEncoder<IStreamingEncoder>(context, format);
189 if (audioStreamEncoder) {
190 return TranscodeOnDemand(context, audioStreamEncoder, uri, bitrate, format);
191 }
192
193 return TranscodeAndWait(context, nullptr, uri, bitrate, format);
194}
195
196IDataStream* Transcoder::TranscodeOnDemand(
197 Context& context,

Callers 1

TranscodeAndWaitMethod · 0.45

Calls 2

getEncoderFunction · 0.85
GetBoolMethod · 0.80

Tested by

no test coverage detected