cvs commit: src/sys/dev/sound/pcm channel.c feeder.c feeder.h
feeder_fmt.c feeder_rate.c
Ariff Abdullah
ariff at FreeBSD.org
Sat Jan 28 18:27:29 PST 2006
ariff 2006-01-29 02:27:28 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_6)
sys/dev/sound/pcm channel.c feeder.c feeder.h feeder_fmt.c
feeder_rate.c
Log:
MFC: Various fixups:
feeder.h:
feeder.c:
- Implement scoring mechanisme to select best format for conversion.
This is actually part of newer format chaining procedures which
will be commited someday. Confusion during chaining process solved
by this scoring since it will try to reduce list of from/to formats
to a single, best format.
Related PR: kern/91683
channel.c:
- Simplify feeder building process since we have smarter format
chaining.
- (1) Fix DMA alignment, based on bytes per sample.
feeder_fmt.c:
- Add few more sign conversion feeders for 24 and 32 bit format.
feeder_rate.c:
- Force buffer / bytes allignment. Unaligned buffer may cause
panics during recording on pure 32bit sample format if it
involves feeder_rate as part of feeders chain. Handle strayed
bytes (mostly caused by #1) better.
Tested on: ATI IXP, force 32bit recording.
This DMA alignment issues are extremely hard to reproduce unless the user
happen to have a 32bit capable soundcards (ATI IXP) and knowledgeable enough
to force it to operate under pure 32bit operations on both record and play
directions.
Revision Changes Path
1.99.2.3 +20 -24 src/sys/dev/sound/pcm/channel.c
1.33.2.2 +125 -7 src/sys/dev/sound/pcm/feeder.c
1.12.2.1 +4 -0 src/sys/dev/sound/pcm/feeder.h
1.14.2.2 +67 -1 src/sys/dev/sound/pcm/feeder_fmt.c
1.11.2.2 +51 -27 src/sys/dev/sound/pcm/feeder_rate.c
More information about the cvs-src
mailing list