[mythtv-users] Playback Profiles? WTF?!
Michael T. Dean
mtdean at thirdcontact.com
Tue Mar 18 01:31:13 UTC 2008
On 03/17/2008 10:31 AM, Jonny B wrote:
> I would suppose the community at large (those in the know) should
> write it. The wiki is a great place to go for hardware configuration,
> and getting things 'working' usually.... but there's hardly any actual
> usage docs.
Thank you for the introduction, Johnny. My name is Mike, and I'm hoping
you (or anyone else reading this thread) can help me out. I
requested--a couple of times, now--that some users (who are
wiki-literate) start up a page for users to "compare" playback
profiles. The purpose would be to provide some documentation for this
very complex configuration item in Myth... :)
This page should document various usage strategies--i.e. /do not/ edit
the default example playback groups/profiles, instead create new groups
and add new entries to play around with so you can see where things were
(Current Video Playback Profile -> Add New; start simple (i.e. if rez >
0 0 -> ffmpeg & XVideo) and add new, fancier features one by one to see
how they affect quality and performance; ... It should also include
some information that explains how Myth uses the profiles (see below in
the description before the SQL for the gist of it).
Also, it should include a place to allow people to "share" their
playback profile groups. If nothing else, describing how users can post
this information to their wiki user pages (possibly allowing them to
link to their posted profiles from the page), but potentially just
creating a table where users could post the information directly in the
page.
I'm thinking something like:
Username | Comment
- Hostname | Playback Profile Name
-- Entry 1
-- Entry 2
- Hostname | Playback Profile Name
-- Entry 1
Where entries contain the information from Priority through Filters
(everything but Hostname and Playback Profile Name). The whole thing
would be a nice pretty table with cells in the Username/Hostname lines
spanning multiple columns. The comment can be used to describe the type
of hardware, why the settings were chosen, etc.
I've attached both my playback profile (the /extremely simple/ one whose
Hostname is labeled "frontend" and that's named "Custom-Simple" is the
one I actually use--and is /very/ similar to the old MythTV 0.20
configuration) and all of the default playback profiles that ship with
MythTV (the ones whose Hostname is listed as "defaults"). At bottom is
the SQL I used to get these.
If someone does create a page that allows users to post their playback
profiles, let me know and I'll modify the SQL to create
already-wiki-formatted output (I just need to see exactly what format is
required for the wiki formatting).
Thanks,
Mike
Following is a nice SQL query that outputs a cross-tab view of the
playback profiles. For a given Hostname, the Playback Profile Name
specified with the "Current Video Playback Profile" setting will be
used. The entry whose priority is 1 will be tried first. If its
criteria (Comparisons) does not match or it cannot be used (i.e. it's
not supported on the hosts current hardware configuration, which
includes the OS, video card, video drivers, and display), the entry
whose priority is 2 will be tried, and so on.
To get the output in a nice file, you can use the MySQL "tee" command.
I.e. issue the command "tee /tmp/PlaybackProfiles" in the mysql client
before issuing the SQL below. (You can use "notee" to turn off the
logging.)
SELECT dpg.hostname AS Hostname, dpg.name AS 'Playback Profile Name',
MAX(IF(dp.value = 'pref_priority', dp.data, '')) AS 'Priority',
MAX(IF(dp.value = 'pref_cmp0', dp.data, '')) AS 'Comparison (0)',
MAX(IF(dp.value = 'pref_cmp1', dp.data, '')) AS 'Comparison (1)',
MAX(IF(dp.value = 'pref_cmp2', dp.data, '')) AS 'Comparison (2)',
MAX(IF(dp.value = 'pref_cmp3', dp.data, '')) AS 'Comparison (3)',
MAX(IF(dp.value = 'pref_cmp4', dp.data, '')) AS 'Comparison (4)',
MAX(IF(dp.value = 'pref_cmp4', dp.data, '')) AS 'Comparison (5)',
MAX(IF(dp.value = 'pref_decoder', dp.data, '')) AS Decoder,
MAX(IF(dp.value = 'pref_videorenderer', dp.data, ''))
AS 'Video Renderer',
MAX(IF(dp.value = 'pref_osdrenderer', dp.data, ''))
AS 'OSD Renderer',
MAX(IF(dp.value = 'pref_osdfade', dp.data, '')) AS 'OSD Fade',
MAX(IF(dp.value = 'pref_deint0', dp.data, ''))
AS 'Deinterlacer (0)',
MAX(IF(dp.value = 'pref_deint1', dp.data, ''))
AS 'Deinterlacer (1)',
MAX(IF(dp.value = 'pref_filters', dp.data, '')) AS Filters
FROM displayprofilegroups dpg, displayprofiles dp
WHERE dpg.profilegroupid = dp.profilegroupid
GROUP BY dpg.profilegroupid, dp.profileid
ORDER BY dpg.profilegroupid, dp.profileid;
EOF
To get a file that's easier to read in a mail message, replace the final
semicolon with "\G". So, here is is, again, but this time in a form
that can be called from the command line to store the output in a file
(for easy copy/paste or attaching).
cat <<"EOF" | mysql -umythtv -p mythconverg > PlaybackProfiles
SELECT dpg.hostname AS Hostname, dpg.name AS 'Playback Profile Name',
MAX(IF(dp.value = 'pref_priority', dp.data, '')) AS 'Priority',
MAX(IF(dp.value = 'pref_cmp0', dp.data, '')) AS 'Comparison (0)',
MAX(IF(dp.value = 'pref_cmp1', dp.data, '')) AS 'Comparison (1)',
MAX(IF(dp.value = 'pref_cmp2', dp.data, '')) AS 'Comparison (2)',
MAX(IF(dp.value = 'pref_cmp3', dp.data, '')) AS 'Comparison (3)',
MAX(IF(dp.value = 'pref_cmp4', dp.data, '')) AS 'Comparison (4)',
MAX(IF(dp.value = 'pref_cmp4', dp.data, '')) AS 'Comparison (5)',
MAX(IF(dp.value = 'pref_decoder', dp.data, '')) AS Decoder,
MAX(IF(dp.value = 'pref_videorenderer', dp.data, ''))
AS 'Video Renderer',
MAX(IF(dp.value = 'pref_osdrenderer', dp.data, ''))
AS 'OSD Renderer',
MAX(IF(dp.value = 'pref_osdfade', dp.data, '')) AS 'OSD Fade',
MAX(IF(dp.value = 'pref_deint0', dp.data, ''))
AS 'Deinterlacer (0)',
MAX(IF(dp.value = 'pref_deint1', dp.data, ''))
AS 'Deinterlacer (1)',
MAX(IF(dp.value = 'pref_filters', dp.data, '')) AS Filters
FROM displayprofilegroups dpg, displayprofiles dp
WHERE dpg.profilegroupid = dp.profilegroupid
GROUP BY dpg.profilegroupid, dp.profileid
ORDER BY dpg.profilegroupid, dp.profileid\G
EOF
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: PlaybackProfiles-VerticalOutput.txt
Url: http://mythtv.org/pipermail/mythtv-users/attachments/20080317/77a8ad4a/attachment.txt
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: PlaybackProfiles
Url: http://mythtv.org/pipermail/mythtv-users/attachments/20080317/77a8ad4a/attachment.diff
More information about the mythtv-users
mailing list