[mythtv-commits] Ticket #10922: [PATCH] OpenGL: Speed up transfer of packed images to texture buffer
MythTV
noreply at mythtv.org
Wed Jul 18 19:17:33 UTC 2012
#10922: [PATCH] OpenGL: Speed up transfer of packed images to texture buffer
---------------------------------+-----------------------------------------
Reporter: Lawrence Rust | Type: Patch - Feature
<lvr@…> | Priority: minor
Status: new | Component: MythTV - Video Playback
Milestone: unknown | Severity: medium
Version: Master Head | Ticket locked: 0
Keywords: OpenGL texture |
optimize |
---------------------------------+-----------------------------------------
I have observed that OpenGL TV playback can consume large amounts of CPU
time making it unrealistic for some systems.
Profiling playback shows that, for interlaced content, the main overhead
is the function pack_yv12interlaced which takes around 23mS using MMX
instructions on an Intel i5 661 @ 3.33GHz using onboard graphics with
Linux 3.4 KMS. With other processing overheads the VideoLoop exceeds 40mS
causing frames to be dropped.
Further profiling shows that the main overhead is in writing to the
texture buffer which is situated in graphics memory. This patch coalesces
all writes to the texture buffer into one burst and reduces the time taken
by pack_yv12interlaced to 12mS using MMX and 15mS without - a reduction of
~300%
Using this patch, playback of interlaced content is smooth and no frames
are dropped.
--
Ticket URL: <http://code.mythtv.org/trac/ticket/10922>
MythTV <http://code.mythtv.org/trac>
MythTV Media Center
More information about the mythtv-commits
mailing list