<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Bryan Moore wrote:
<blockquote
cite="mid:BFB494C8E2696649AD6DE7138283EBFC0135C97C@agserv02.airgain.lan"
type="cite">
<meta http-equiv="Content-Type" content="text/html; ">
<meta name="Generator" content="Microsoft Word 11 (filtered medium)">
<style>
<!--
/* Font Definitions */
@font-face
{font-family:Batang;
panose-1:2 3 6 0 0 1 1 1 1 1;}
@font-face
{font-family:"\@Batang";}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:12.0pt;
font-family:"Times New Roman";}
a:link, span.MsoHyperlink
{color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{color:purple;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:Arial;
color:windowtext;}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;}
div.Section1
{page:Section1;}
-->
</style>
<div class="Section1">
<p class="MsoNormal"><font face="Arial" size="2"><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Arial" size="2"><span
style="font-size: 10pt; font-family: Arial;">See three “FIX” items
below<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Arial" size="2"><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Arial" size="2"><span
style="font-size: 10pt; font-family: Arial;">[ Re-submitting because
it didn’t show up in the
digest as I wasn’t yet in vlc-devel. ]<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">ref: "<a
moz-do-not-send="true"
href="http://forum.videolan.org/viewtopic.php?f=7&t=57973&p=193157#p193157"
title="blocked::http://forum.videolan.org/viewtopic.php?f=7&t=57973&p=193157#p193157">http://forum.videolan.org/viewtopic.php?f=7&t=57973&p=193157#p193157</a>"<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">Based on
information that was explained in detail in
the above post, we are proposing 3 sets of patches to vlc to correct
problems
that reduce video playback quality, particularly for streaming H.264
video, and
also video playback via X11 and XVideo (in general).<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">As stated in the
subject line, these patches were
tested on 0.9.8a and appear to apply as well to the latest 'git'
repository
fetch.<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">NOTE: code
changes surrounded by comments,
'Airgain begin' and 'Airgain end'<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">FIX #1: frame
buffer size<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">modules/demux/live555.cpp
file, function
'SessionsSetup', assignments to 'tk->' members: use 'i_buffer' in
lieu of
hard-coded <o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">65536 for initial
buffer size.<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain
begin - increase video buffer to
'i_buffer' bytes (see above)<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> //
tk->i_buffer = 65536;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> //
tk->p_buffer = (uint8_t *)malloc( 65536
);<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> tk->i_buffer
= i_buffer;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> tk->p_buffer
= (uint8_t *)malloc( i_buffer
);<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain end<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">FIX #2: correct
I-frame timing<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">file
include/vlc_block.h, function
'block_ChainExtract'<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">static size_t
block_ChainExtract( block_t *p_list,
void *p_data, size_t i_max )<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">{<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> size_t i_total
= 0;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> uint8_t *p =
(uint8_t*)p_data;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain
begin<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> block_t
*p_list0 = p_list;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain end<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> while( p_list
&& i_max )<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> {<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> size_t
i_copy = __MIN(
i_max, p_list->i_buffer );<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> memcpy( p,
p_list->p_buffer, i_copy );<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> i_max -=
i_copy;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> i_total +=
i_copy;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> p += i_copy;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain
begin<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
if(!p_list0->i_dts
&& !p_list0->i_pts)<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> {<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_list0->i_dts = p_list->i_dts;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_list0->i_pts = p_list->i_pts;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> }<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain
end<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> p_list =
p_list->p_next;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> }<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> return i_total;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">}<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">file
modules/packetizer/h264.c, function
'ParseNALBlock', near the end<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> /* Append the
block */<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> if( p_frag )<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
block_ChainAppend(
&p_sys->p_frame, p_frag );<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> *pb_used_ts =
false;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> if(
p_sys->i_frame_dts < 0
&& p_sys->i_frame_pts < 0 )<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> {<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain
begin - if B
frame or i_frag_pts is zero, do NOT assign frame [pd]ts !<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
if(i_frag_pts &&
p_sys->slice.i_frame_type != 8)<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> {<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain
end<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_sys->i_frame_dts =
i_frag_dts;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_sys->i_frame_pts =
i_frag_pts;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> *pb_used_ts
= true;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain
begin<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> }<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain
end<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> }<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> return p_pic;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">}<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">file
modules/packetizer/h264.c, function
'OutputPicture', also near the end<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> else<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> {<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> p_pic =
block_ChainGather(
p_sys->p_frame );<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> }<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain
begin - do not assign
i_[pd]ts from frame [pd]ts unless mine are <= 0<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
if(p_pic->i_dts <= 0 &&
p_pic->i_pts <= 0)<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> {<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain end<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_pic->i_dts =
p_sys->i_frame_dts;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_pic->i_pts =
p_sys->i_frame_pts;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain
begin<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> }<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain end<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_pic->i_length = 0; /* FIXME */<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_pic->i_flags |=
p_sys->slice.i_frame_type;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_sys->slice.i_frame_type = 0;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_sys->p_frame = NULL;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_sys->i_frame_dts = -1;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_sys->i_frame_pts = -1;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
p_sys->b_slice = false;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> return p_pic;<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">}<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">FIX #3: (X11
only) - using XFlush + usleep to
send commands to XServer and thread-switch _before_ XSync<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">file
modules/video_output/x11/xcommon.c, function
'DisplayVideo', near the end<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> }<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain
begin - XFlush to send
commands, usleep to force context switch.<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // This is
likely to help client/server
interaction<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> XFlush(
p_vout->p_sys->p_display
); // force commands to be sent<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> usleep(500);
// then switch contexts
before waiting<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> // Airgain end<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> /* Make sure
the command is sent now -
do NOT use XFlush !*/<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"> XSync(
p_vout->p_sys->p_display,
False );<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">
vlc_mutex_unlock(
&p_vout->p_sys->lock );<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Courier New" size="2"><span
style="font-size: 10pt; font-family: "Courier New";">}<o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Arial" size="2"><span
style="font-size: 10pt; font-family: Arial;"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><font face="Arial" size="2"><span
style="font-size: 10pt; font-family: Arial;">Regards,</span></font><o:p></o:p></p>
<p class="MsoNormal"><font face="Arial" size="2"><span
style="font-size: 10pt; font-family: Arial;">Bryan M for Bob F</span></font><o:p></o:p></p>
<p class="MsoNormal"><font face="Arial" size="2"><span
style="font-size: 10pt; font-family: Arial;"><a moz-do-not-send="true"
href="http://www.airgain.com/">http://www.Airgain.com</a><o:p></o:p></span></font></p>
<p class="MsoNormal"><font face="Times New Roman" size="3"><span
style="font-size: 12pt;"><o:p> </o:p></span></font></p>
<p class="MsoNormal"><st1:Street w:st="on"><st1:address
style="background-position: left bottom; background-image: url(res://ietag.dll/#34/#1001); background-repeat: repeat-x;"
tabindex="0" w:st="on"><font face="Times New Roman" size="3"><span
style="font-size: 12pt;"><o:p> </o:p></span></font></st1:address></st1:Street></p>
</div>
<pre wrap="">
<hr size="4" width="90%">
_______________________________________________
vlc-devel mailing list
To unsubscribe or modify your subscription options:
<a class="moz-txt-link-freetext" href="http://mailman.videolan.org/listinfo/vlc-devel">http://mailman.videolan.org/listinfo/vlc-devel</a>
</pre>
</blockquote>
<br>
Have you tested? will not break any other rtsp live555 stream e.g
mpeg-2ts?<br>
</body>
</html>