[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Traverso-commit] traverso/src/core FlacAudioReader.cpp MadAudioR...
From: |
Ben Levitt |
Subject: |
[Traverso-commit] traverso/src/core FlacAudioReader.cpp MadAudioR... |
Date: |
Sat, 21 Jul 2007 01:00:23 +0000 |
CVSROOT: /sources/traverso
Module name: traverso
Changes by: Ben Levitt <benjie> 07/07/21 01:00:23
Modified files:
src/core : FlacAudioReader.cpp MadAudioReader.cpp
Log message:
- reduce processig when seeking an mp3 (process 3 extra mp3 frames,
instead of 29 extra)
- comment out some hopefully unnecessary mp3 decoding checking code.
if it still works fine
for everyone, I'll pull it out.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/FlacAudioReader.cpp?cvsroot=traverso&r1=1.8&r2=1.9
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/MadAudioReader.cpp?cvsroot=traverso&r1=1.10&r2=1.11
Patches:
Index: FlacAudioReader.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/FlacAudioReader.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- FlacAudioReader.cpp 20 Jul 2007 23:04:21 -0000 1.8
+++ FlacAudioReader.cpp 21 Jul 2007 01:00:23 -0000 1.9
@@ -477,20 +477,20 @@
}
// Pad end of file with 0s if necessary. (Shouldn't be necessary...)
- int remainingFramesRequested = frameCount - framesCoppied;
+ /*int remainingFramesRequested = frameCount - framesCoppied;
int remainingFramesInFile = get_length() - (m_readPos + framesCoppied);
if (framesCoppied == 0 && remainingFramesInFile > 0) {
int padLength = (remainingFramesRequested >
remainingFramesInFile) ? remainingFramesInFile : remainingFramesRequested;
- //PERROR("padLength: %d", padLength);
+ PERROR("padLength: %d", padLength);
for (int c = 0; c < get_num_channels(); c++) {
memset(buffer[c] + framesCoppied, 0, padLength *
sizeof(audio_sample_t));
}
framesCoppied += padLength;
}
if (framesCoppied > frameCount) {
- //PERROR("Truncating");
+ PERROR("Truncating");
framesCoppied = frameCount;
- }
+ }*/
//printf("copied %d of %d. nextFrame: %lu of %lu\n", samplesCoppied,
sampleCount, m_readPos, get_length());
Index: MadAudioReader.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/MadAudioReader.cpp,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -b -r1.10 -r1.11
--- MadAudioReader.cpp 20 Jul 2007 23:45:31 -0000 1.10
+++ MadAudioReader.cpp 21 Jul 2007 01:00:23 -0000 1.11
@@ -650,9 +650,13 @@
unsigned int frame = static_cast<unsigned int>(posSecs / mp3FrameSecs);
nframes_t frameOffset = (nframes_t)(start - (frame * mp3FrameSecs *
get_rate() + 0.5));
- // Rob said: 29 frames is the theoretically max frame reservoir limit
(whatever that means...)
- // it seems that mad needs at most 29 frames to get ready
- unsigned int frameReservoirProtect = (frame > 29 ? 29 : frame);
+ // K3b source: Rob said: 29 frames is the theoretically max frame
reservoir limit
+ // (whatever that means...) it seems that mad needs at most 29 frames
to get ready
+ //
+ // Ben says: It looks like Rob (the author of MAD) implies here:
+ // http://www.mars.org/mailman/public/mad-dev/2001-August/000321.html
+ // that 3 frames (1 + 2 extra) is enough... seems to work fine...
+ unsigned int frameReservoirProtect = (frame > 3 ? 3 : frame);
frame -= frameReservoirProtect;
@@ -835,7 +839,7 @@
// FIXME: This shouldn't be necessary! :P
// is get_length() reporting incorrectly?
// are we not outputting the last mp3-frame for some reason?
- int remainingFramesRequested = frameCount - framesWritten;
+ /*int remainingFramesRequested = frameCount - framesWritten;
int remainingFramesInFile = get_length() - (m_readPos + framesWritten);
if (remainingFramesRequested > 0 && remainingFramesInFile > 0) {
int padLength = (remainingFramesRequested >
remainingFramesInFile) ? remainingFramesInFile : remainingFramesRequested;
@@ -850,7 +854,7 @@
if (framesWritten > remainingFramesInFile) {
printf("truncating by %d!\n", framesWritten -
remainingFramesInFile);
framesWritten = remainingFramesInFile;
- }
+ }*/
//printf("at: %lu (total: %lu), request: %d (returned: %d)\n",
m_readPos + framesWritten, m_frames, frameCount, framesWritten);
- [Traverso-commit] traverso/src/core FlacAudioReader.cpp MadAudioR...,
Ben Levitt <=