linux/drivers/media/video/cx88
Jelle Foks f9e54e0c84 V4L/DVB (6828): cx88-blackbird: audio improvements
This patch should fix the 'muted audio' and 'raspy audio' problem for
mpeg2 streams out of cx88-blackbird devices.

Especially mythtv users would find that the audio would often sound bad
(aliased, or 'raspy'), mainly related to channel changes, many (all?)
other users would find that there was no audio at all in the mpeg data
from the encoder chip, unless the audio was manually unmuted.

The patch includes the following modifications:

Don't actually start the mpeg2 encoder until the device is read from
by the application.

Wait until the audio is stable for at least 400ms before starting the
mpeg encoder.

Mute/Unmute the audio when starting/stopping the mpeg encoder.

Stop the mpeg encoder when changing parameters and when changing tuner
frequency.

Add a variable 'mpeg_active' to struct cx8802_dev to allow tracking of
whether or not the mpeg2 encoder is active.

Load the firmware on cx88-blackbird driver load.

Signed-off-by: Jelle Foks <jelle@foks.8m.com>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-01-25 19:03:47 -02:00
..
cx88-alsa.c V4L/DVB (6600): V4L: videobuf: don't chew up namespace STATE_.*, convert to VIDEOBUF_ 2008-01-25 19:02:11 -02:00
cx88-blackbird.c V4L/DVB (6828): cx88-blackbird: audio improvements 2008-01-25 19:03:47 -02:00
cx88-cards.c V4L/DVB (6386): Add support for radio on CX88_BOARD_MSI_TVANYWHERE_MASTER 2008-01-25 19:00:55 -02:00
cx88-core.c V4L/DVB (6600): V4L: videobuf: don't chew up namespace STATE_.*, convert to VIDEOBUF_ 2008-01-25 19:02:11 -02:00
cx88-dvb.c V4L/DVB (6333): cx88: Change void* card_priv to struct vp3054_i2c_state 2007-10-22 12:01:42 -02:00
cx88-i2c.c V4L/DVB (6384): Replace TDA9887_SET_CONFIG by TUNER_SET_CONFIG 2008-01-25 19:00:54 -02:00
cx88-input.c V4L/DVB (6247): Fix bug #8689: Fixes IR stop/start during suspend/resume 2007-10-09 22:14:51 -03:00
cx88-mpeg.c V4L/DVB (6600): V4L: videobuf: don't chew up namespace STATE_.*, convert to VIDEOBUF_ 2008-01-25 19:02:11 -02:00
cx88-reg.h V4L/DVB (6066): cx88-alsa: Change order of interrupt enabling, fix spurious IRQs 2007-10-09 22:05:55 -03:00
cx88-tvaudio.c V4L/DVB (6125): whitespace cleanup: replace leading spaces with tabs 2007-10-09 22:07:29 -03:00
cx88-vbi.c V4L/DVB (6600): V4L: videobuf: don't chew up namespace STATE_.*, convert to VIDEOBUF_ 2008-01-25 19:02:11 -02:00
cx88-video.c V4L/DVB (6600): V4L: videobuf: don't chew up namespace STATE_.*, convert to VIDEOBUF_ 2008-01-25 19:02:11 -02:00
cx88-vp3054-i2c.c V4L/DVB (6333): cx88: Change void* card_priv to struct vp3054_i2c_state 2007-10-22 12:01:42 -02:00
cx88-vp3054-i2c.h V4L/DVB (5629): Cx88: VP3054 support can't be a module when cx88 is compiled in 2007-07-18 14:23:11 -03:00
cx88.h V4L/DVB (6828): cx88-blackbird: audio improvements 2008-01-25 19:03:47 -02:00
Kconfig V4L/DVB (6479): use input functions, should depend on INPUT 2007-11-04 21:41:23 -02:00
Makefile V4L/DVB (5166): Remove obsolete alias defines of CONFIG_* settings 2007-02-21 13:35:11 -02:00