Opened 16 years ago
Last modified 13 years ago
#1326 new defect
tv : changing channel broken on cx8800 card
Reported by: | Owned by: | reimar | |
---|---|---|---|
Priority: | normal | Component: | core |
Version: | HEAD | Severity: | normal |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Reproduced by developer: | no | Analyzed by developer: | no |
Description
changing channel with h/k keys corrupts image as if I was running a second mplayer process
launching mplayer with the wanted channel ("channel=<n>") is fine
svn27482 was also broken
svn26753 was OK
Attachments (5)
Change History (16)
by , 16 years ago
Attachment: | Screenshot-MPlayer.png added |
---|
comment:1 by , 16 years ago
comment:2 by , 16 years ago
comment:3 by , 16 years ago
I have the same problem.
uname -a
Linux anarchos 2.6.26.6-79.fc9.i686 #1 SMP Fri Oct 17 14:52:14 EDT 2008 i686 i686 i386 GNU/Linux
Card: Hauppauge WinTV-HVR1300 DVB-T/Hybrid MPEG Encoder
02:0b.0 Multimedia video controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder (rev 05)
02:0b.1 Multimedia controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder [Audio Port] (rev 05)
02:0b.2 Multimedia controller: Conexant CX23880/1/2/3 PCI Video and Audio Decoder [MPEG Port] (rev 05)
If I downgrade to mplayer svn 2008-05-31 channel switching is fine.
But with mplayer 2008-09-05 and today's svn 2008-11-15, although the first screen is ok, when I switch channels the new channel is in a sub picture inside mplayer window while the rest of the window plays some sort of short loop of the first channel. (see attached image)
comment:4 by , 16 years ago
It appears that every time a channel is changed, the tv norm is set again.
Commenting out this at stream/tv.c channel change related functions, so it works like previous version, seems to fix this issue.
Of course this would remove the ability to have per channel norm, if it is possible.
Find attached the patch that removes the tv norm set in channel changing functions.
by , 16 years ago
Attachment: | mplayer-nonorm.patch added |
---|
After some change, every time a tv channel is changed, the tv set norm is set as well. This doesn't work with my cx8800 card. This patch removes the norm set, so it works with my card
comment:5 by , 16 years ago
comment:6 by , 16 years ago
This thread explains what we see.
http://www.mail-archive.com/linux-media@vger.kernel.org/msg00157.html
comment:7 by , 16 years ago
I propose a patch which, when the channel change, set the norm of the new channel only if it is different from the previous channel.
comment:9 by , 16 years ago
I've also tried to mute the sound during the channel change because this makes my card cracking.
I've failed because the crack occurs after mplayer have finished commanding the card to change channel.
The following patch mute the sound to preserve the speakers when stepping channel but the sound needs to be manually unmuted.
--- mplayer/command.c.old 2009-06-01 20:03:51.000000000 +0200
+++ mplayer/command.c.new 2009-06-02 02:47:55.000000000 +0200
@@ -2770,7 +2770,10 @@
case MP_CMD_TV_STEP_CHANNEL:{
if (mpctx->file_format == DEMUXER_TYPE_TV) {
+ int was_muted = mpctx->user_muted;
int v = cmd->args[0].v.i;
+ if (!was_muted)
+ mp_property_mute(NULL, M_PROPERTY_STEP_UP, NULL, mpctx);
if (v > 0) {
tv_step_channel((tvi_handle_t *) (mpctx->
demuxer->priv),
comment:11 by , 13 years ago
This bug was introduced in mplayer svn r27057. The cx88 driver resets picture size to 320x240 when the norm is set. Although this is a driver issue I believe mplayer should leave the norms alone if not configured in the user's config file.
Attached is a patch I posted to the dev mailing list (http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2012-May/070298.html) to stop setting the norm if not required.
Schreenshot of mplayer after changing a channel