Lines Matching refs:TRACK
77 ALOGE("DownmixerBufferProvider::getNextBuffer() error: NULL track buffer provider");
87 ALOGE("DownmixerBufferProvider::releaseBuffer() error: NULL track buffer provider");
110 // AudioMixer is not yet capable of more than 32 active track inputs
184 ALOGV("add track (%d)", n);
186 // assume default parameters for the track, except where noted below
215 // setParameter(name, TRACK, MAIN_BUFFER, mixBuffer) is required before enable(name)
224 ALOGE("AudioMixer::getTrackName(0x%x) failed, error preparing track for downmix",
246 ALOGV("initTrackDownmix(track=%d, mask=0x%x) calls prepareTrackForDownmix()",
259 // this track had previously been configured with a downmixer, delete it
292 // channel input configuration will be overridden per-track
317 ALOGE("error %d while configuring downmixer for track %d", status, trackName);
325 ALOGE("error %d while enabling downmixer for track %d", status, trackName);
349 ALOGE("error %d while setting downmix type for track %d", status, trackName);
352 ALOGV("downmix type set to %d for track %d", (int) downmixType, trackName);
357 // - keep track of the real buffer provider in case it was set before
360 // track's buffer provider, and we'll use it as the track's buffer provider
376 ALOG_ASSERT(uint32_t(name) < MAX_NUM_TRACKS, "bad track name %d", name);
378 track_t& track(mState.tracks[ name ]);
379 if (track.enabled) {
380 track.enabled = false;
384 delete track.resampler;
385 track.resampler = NULL;
395 ALOG_ASSERT(uint32_t(name) < MAX_NUM_TRACKS, "bad track name %d", name);
396 track_t& track = mState.tracks[name];
398 if (!track.enabled) {
399 track.enabled = true;
408 ALOG_ASSERT(uint32_t(name) < MAX_NUM_TRACKS, "bad track name %d", name);
409 track_t& track = mState.tracks[name];
411 if (track.enabled) {
412 track.enabled = false;
421 ALOG_ASSERT(uint32_t(name) < MAX_NUM_TRACKS, "bad track name %d", name);
422 track_t& track = mState.tracks[name];
429 case TRACK:
433 if (track.channelMask != mask) {
436 track.channelMask = mask;
437 track.channelCount = channelCount;
438 // the mask has changed, does this track need a downmixer?
440 TRACK, CHANNEL_MASK, %x)", mask);
445 if (track.mainBuffer != valueBuf) {
446 track.mainBuffer = valueBuf;
447 ALOGV("setParameter(TRACK, MAIN_BUFFER, %p)", valueBuf);
452 if (track.auxBuffer != valueBuf) {
453 track.auxBuffer = valueBuf;
454 ALOGV("setParameter(TRACK, AUX_BUFFER, %p)", valueBuf);
462 // for a specific track? or per mixer?
474 if (track.setResampler(uint32_t(valueInt), mSampleRate)) {
481 track.resetResampler();
485 delete track.resampler;
486 track.resampler = NULL;
487 track.sampleRate = mSampleRate;
500 if (track.volume[param-VOLUME0] != valueInt) {
502 track.prevVolume[param-VOLUME0] = track.volume[param-VOLUME0] << 16;
503 track.volume[param-VOLUME0] = valueInt;
505 track.prevVolume[param-VOLUME0] = valueInt << 16;
506 track.volumeInc[param-VOLUME0] = 0;
508 int32_t d = (valueInt<<16) - track.prevVolume[param-VOLUME0];
510 track.volumeInc[param-VOLUME0] = volInc;
512 track.prevVolume[param-VOLUME0] = valueInt << 16;
520 if (track.auxLevel != valueInt) {
522 track.prevAuxLevel = track.auxLevel << 16;
523 track.auxLevel = valueInt;
525 track.prevAuxLevel = valueInt << 16;
526 track.auxInc = 0;
528 int32_t d = (valueInt<<16) - track.prevAuxLevel;
530 track.auxInc = volInc;
532 track.prevAuxLevel = valueInt << 16;
554 ALOGV("creating resampler from track %d Hz to device %d Hz", value, devSampleRate);
610 ALOG_ASSERT(uint32_t(name) < MAX_NUM_TRACKS, "bad track name %d", name);
616 // setting the buffer provider for a track that gets downmixed consists in:
620 // 2/ saving the buffer provider for the track so the wrapper can use it
695 "Track %d needs downmix + resample", i);
704 "Track %d needs downmix", i);
747 // track hooks for subsequent mixer process
1114 // acquire each track's buffer
1160 // t.in == NULL can happen if the track was flushed just after having
1200 // release each track's buffer
1263 // t.in == NULL can happen if the track was flushed just after having
1281 // one track, 16 bits stereo without resampling is the most common case
1290 //ALOG_ASSERT((1 << i) == state->enabledTracks, "more than 1 track enabled");
1307 // in == NULL can happen if the track was flushed just after having
1311 ALOGE_IF(((unsigned long)in & 3), "process stereo track: input buffer alignment pb: "
1312 "buffer %p track %d, channels %d, needs %08x",
1320 // we process only one track.