Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: MythTV: Dev

LiveTV accepts bob 2x even though refresh rate is too low

 

 

MythTV dev RSS feed   Index | Next | Previous | View Threaded


mtdean at thirdcontact

Dec 18, 2007, 2:45 PM

Post #1 of 3 (751 views)
Permalink
LiveTV accepts bob 2x even though refresh rate is too low

I recently noticed that upon startup of LiveTV (playback of recordings
is unaffected), the internal player is accepting bobdeint (which my
playback profile specified as the primary deinterlacer) even though the
refresh rate of my display is too low--which causes all sorts of
playback issues (skipped frames, slideshow-like playback, jumpiness,
prebuffering pauses, and audio issues). I don't use LiveTV, so I only
noticed it today when testing channels after I rescanned.

If I use the menu to change "Video Scan" from "Detect" to "Detect"--i.e.
just force it to re-check--it realizes the refresh rate is too low and
falls back to linearblend (the fallback deinterlacer in my profile).
Once this is done, even after changing channels, it continues to use
linearblend. The next time LiveTV starts up, it again uses bob 2x.

While removing bob (or other 2x deints) from the profile prevents the
issue, it seems we should be able to detect this--especially since the
default profiles use bob as the primary deinterlacer. Unfortunately,
when I dug into the code, it looked like I would be likely to do more
damage than good. However, it seems that we're just checking whether
bob will work just a bit too soon (i.e. before all the video or display
information is available), and I'm guessing the fix would be relatively
straightforward for someone who knows the player code. I'll eventually
get to looking through the code if someone else doesn't do it first, but
I thought I'd mention the issue in case it truly is an easy fix for a
knowledgeable developer.

Thanks,
Mike

$ mythfrontend --version
Source code version : 15059M
SVN Branch : trunk
Library API version : 0.21.20071202-1
Network Protocol Version: 36
Options compiled in:
linux release using_oss using_alsa using_jack using_backend using_dbox2
using_dvb using_firewire using_frontend using_hdhomerun using_iptv
using_ivtv using_joystick_menu using_lirc using_opengl_vsync
using_opengl_video using_v4l using_x11 using_xrandr using_xv using_xvmc
using_xvmc_opengl using_bindings_perl using_opengl using_libavc_5_3
using_live using_xvmc_pbuffer

A frontend log with -v important,general,playback (with a few comments)
is at:
http://misc.thirdcontact.com/MythTV/mythfrontend-invalid_refresh_detection_uses_bob.log

My (very simple) playback profile:

mysql> select * from settings where value =
'DefaultVideoPlaybackProfile' and hostname = 'titan.thirdcontact';
+-----------------------------+-------+--------------------+
| value | data | hostname |
+-----------------------------+-------+--------------------+
| DefaultVideoPlaybackProfile | CPU++ | titan.thirdcontact |
+-----------------------------+-------+--------------------+
1 row in set (0.00 sec)

mysql> select * from displayprofilegroups where hostname =
'titan.thirdcontact';
+-------+--------------------+----------------+
| name | hostname | profilegroupid |
+-------+--------------------+----------------+
| CPU++ | titan.thirdcontact | 1 |
+-------+--------------------+----------------+
1 row in set (0.00 sec)

mysql> select * from displayprofiles where profilegroupid = 1;
+----------------+-----------+--------------------+-------------+
| profilegroupid | profileid | value | data |
+----------------+-----------+--------------------+-------------+
| 1 | 1 | pref_priority | 1 |
| 1 | 1 | pref_cmp0 | > 0 0 |
| 1 | 1 | pref_decoder | ffmpeg |
| 1 | 1 | pref_videorenderer | xv-blit |
| 1 | 1 | pref_osdrenderer | softblend |
| 1 | 1 | pref_osdfade | 1 |
| 1 | 1 | pref_deint0 | bobdeint |
| 1 | 1 | pref_deint1 | linearblend |
| 1 | 1 | pref_filters | |
+----------------+-----------+--------------------+-------------+
9 rows in set (0.00 sec)

_______________________________________________
mythtv-dev mailing list
mythtv-dev[at]mythtv.org
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev


billymacdonald at gmail

Apr 8, 2008, 8:36 PM

Post #2 of 3 (591 views)
Permalink
Re: LiveTV accepts bob 2x even though refresh rate is too low [In reply to]

On Tue, Dec 18, 2007 at 6:45 PM, Michael T. Dean
<mtdean[at]thirdcontact.com> wrote:
> I recently noticed that upon startup of LiveTV (playback of recordings
> is unaffected), the internal player is accepting bobdeint (which my
> playback profile specified as the primary deinterlacer) even though the
> refresh rate of my display is too low--which causes all sorts of
> playback issues (skipped frames, slideshow-like playback, jumpiness,
> prebuffering pauses, and audio issues). I don't use LiveTV, so I only
> noticed it today when testing channels after I rescanned.
>
> If I use the menu to change "Video Scan" from "Detect" to "Detect"--i.e.
> just force it to re-check--it realizes the refresh rate is too low and
> falls back to linearblend (the fallback deinterlacer in my profile).
> Once this is done, even after changing channels, it continues to use
> linearblend. The next time LiveTV starts up, it again uses bob 2x.
>
> While removing bob (or other 2x deints) from the profile prevents the
> issue, it seems we should be able to detect this--especially since the
> default profiles use bob as the primary deinterlacer. Unfortunately,
> when I dug into the code, it looked like I would be likely to do more
> damage than good. However, it seems that we're just checking whether
> bob will work just a bit too soon (i.e. before all the video or display
> information is available), and I'm guessing the fix would be relatively
> straightforward for someone who knows the player code. I'll eventually
> get to looking through the code if someone else doesn't do it first, but
> I thought I'd mention the issue in case it truly is an easy fix for a
> knowledgeable developer.
>
> Thanks,
> Mike
>

Wow, I've been trying to figure out why HD plays fine in recordings
but not LiveTV and it turns out I was running into a similar issue as
you. In my case it was picking greedy (Normal profile) based on the
720x576 resolution. The only solution I found was to have a profile
with one option that works for all resolutions and not use the
features for better de-interlacing at lower resolutions.

Billy
_______________________________________________
mythtv-dev mailing list
mythtv-dev[at]mythtv.org
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev


billymacdonald at gmail

Apr 8, 2008, 8:41 PM

Post #3 of 3 (589 views)
Permalink
Re: LiveTV accepts bob 2x even though refresh rate is too low [In reply to]

On Tue, Apr 8, 2008 at 11:36 PM, Billy Macdonald
<billymacdonald[at]gmail.com> wrote:
>
>
> Wow, I've been trying to figure out why HD plays fine in recordings
> but not LiveTV and it turns out I was running into a similar issue as
> you. In my case it was picking greedy (Normal profile) based on the
> 720x576 resolution. The only solution I found was to have a profile
> with one option that works for all resolutions and not use the
> features for better de-interlacing at lower resolutions.
>
> Billy
>

PS. Ticket http://svn.mythtv.org/trac/ticket/5025 was already created
on this, I should have looked there before posting....
_______________________________________________
mythtv-dev mailing list
mythtv-dev[at]mythtv.org
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev

MythTV dev RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact lists@gossamer-threads.com
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.