Improved tracing output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38470 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -90,8 +90,8 @@ status_t
|
|||||||
ProxyAudioSupplier::GetFrames(void* buffer, int64 frameCount,
|
ProxyAudioSupplier::GetFrames(void* buffer, int64 frameCount,
|
||||||
bigtime_t startTime, bigtime_t endTime)
|
bigtime_t startTime, bigtime_t endTime)
|
||||||
{
|
{
|
||||||
TRACE("GetFrames(%p, %lld, %lld, %lld)\n", buffer, frameCount,
|
TRACE("GetFrames(%p, frameCount: %lld, time interval: %lld - %lld)\n",
|
||||||
startTime, endTime);
|
buffer, frameCount, startTime, endTime);
|
||||||
|
|
||||||
// Create a list of playing intervals which compose the supplied
|
// Create a list of playing intervals which compose the supplied
|
||||||
// performance time interval.
|
// performance time interval.
|
||||||
@@ -137,6 +137,10 @@ ProxyAudioSupplier::GetFrames(void* buffer, int64 frameCount,
|
|||||||
return B_ERROR;
|
return B_ERROR;
|
||||||
|
|
||||||
// retrieve the audio data for each interval.
|
// retrieve the audio data for each interval.
|
||||||
|
#ifdef TRACE_PROXY_AUDIO_SUPPLIER
|
||||||
|
int32 intervalIndex = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
int64 framesRead = 0;
|
int64 framesRead = 0;
|
||||||
while (!playingIntervals.IsEmpty()) {
|
while (!playingIntervals.IsEmpty()) {
|
||||||
PlayingInterval* interval
|
PlayingInterval* interval
|
||||||
@@ -146,10 +150,6 @@ ProxyAudioSupplier::GetFrames(void* buffer, int64 frameCount,
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
TRACE("GetFrames() - interval [%lld, %lld]: [%lld, %lld]\n",
|
|
||||||
interval->start_time, interval->end_time,
|
|
||||||
interval->x_start_time, interval->x_end_time);
|
|
||||||
|
|
||||||
// get playing direction
|
// get playing direction
|
||||||
int32 playingDirection = 0;
|
int32 playingDirection = 0;
|
||||||
if (interval->speed > 0)
|
if (interval->speed > 0)
|
||||||
@@ -159,6 +159,13 @@ ProxyAudioSupplier::GetFrames(void* buffer, int64 frameCount,
|
|||||||
float absSpeed = interval->speed * playingDirection;
|
float absSpeed = interval->speed * playingDirection;
|
||||||
int64 framesToRead = _AudioFrameForTime(interval->end_time)
|
int64 framesToRead = _AudioFrameForTime(interval->end_time)
|
||||||
- _AudioFrameForTime(interval->start_time);
|
- _AudioFrameForTime(interval->start_time);
|
||||||
|
|
||||||
|
TRACE("GetFrames() - interval (%ld) [%lld, %lld]: [%lld, %lld], "
|
||||||
|
"frames: %lld\n", intervalIndex,
|
||||||
|
interval->start_time, interval->end_time,
|
||||||
|
interval->x_start_time, interval->x_end_time,
|
||||||
|
framesToRead);
|
||||||
|
|
||||||
// not playing
|
// not playing
|
||||||
if (absSpeed == 0)
|
if (absSpeed == 0)
|
||||||
_ReadSilence(buffer, framesToRead);
|
_ReadSilence(buffer, framesToRead);
|
||||||
@@ -180,6 +187,10 @@ ProxyAudioSupplier::GetFrames(void* buffer, int64 frameCount,
|
|||||||
framesRead += framesToRead;
|
framesRead += framesToRead;
|
||||||
buffer = _SkipFrames(buffer, framesToRead);
|
buffer = _SkipFrames(buffer, framesToRead);
|
||||||
delete interval;
|
delete interval;
|
||||||
|
|
||||||
|
#ifdef TRACE_PROXY_AUDIO_SUPPLIER
|
||||||
|
intervalIndex++;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
// read silence on error
|
// read silence on error
|
||||||
if (error != B_OK) {
|
if (error != B_OK) {
|
||||||
|
|||||||
Reference in New Issue
Block a user