<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=iso-8859-1"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:"Segoe UI";
        panose-1:2 11 5 2 4 2 4 2 2 3;}
@font-face
        {font-family:"var\(--ff-mono\)";
        panose-1:0 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:inherit;
        panose-1:0 0 0 0 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
code
        {mso-style-priority:99;
        font-family:"Courier New";}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        font-size:10.0pt;
        font-family:"Courier New";}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:"Courier New";}
span.hljs-string
        {mso-style-name:hljs-string;}
span.hljs-number
        {mso-style-name:hljs-number;}
span.hljs-comment
        {mso-style-name:hljs-comment;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link="#0563C1" vlink="#954F72" style='word-wrap:break-word'><div class=WordSection1><p style='margin-top:0in;background:white;vertical-align:baseline'><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729'>Hi Team!<o:p></o:p></span></p><p style='margin-top:0in;background:white;vertical-align:baseline'><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729'>I am writing software to play videos that have been recorded from NVR. I have completed most of the work, but there is one more feature that allows the user to change the play speed such as 0.5x, 2x, 4x, 8x ...<o:p></o:p></span></p><p style='margin-top:0in;background:white;vertical-align:baseline;margin-bottom:var(--s-prose-spacing);font-variant-ligatures: normal;font-variant-caps: normal;font-variant-numeric: inherit;font-variant-east-asian: inherit;font-stretch: inherit;line-height:inherit;box-sizing: inherit;orphans: 2;widows: 2;-webkit-text-stroke-width: 0px;text-decoration-thickness: initial;text-decoration-style: initial;text-decoration-color: initial;word-spacing:0px'><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729'>I searched the internet all day and still couldn't find any suggestions. Here is my summary code below.<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>auto pFormatCtx = avformat_alloc_context();<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p> </o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>av_dict_set_int(&opts, "rw_timeout", 5000000, 0);<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>av_dict_set_int(&opts, "tcp_nodelay", 1, 0);<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>av_dict_set_int(&opts, "stimeout", 10000000, 0);<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>av_dict_set(&opts, "user_agent", "Mozilla/5.0", 0);<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>av_dict_set(&opts, "rtsp_transport", "tcp", 0);<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>av_dict_set(&opts, "rtsp_flags", "prefer_tcp", 0);<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>av_dict_set_int(&opts, "buffer_size", BUFSIZE, 0);<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p> </o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>int err = avformat_open_input(&pFormatCtx, fullRtspUri, NULL, &opts);<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>if(err < 0)<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    return;<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    <o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>err = avformat_find_stream_info(pFormatCtx, NULL);<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>if (err < 0)<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    return;<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>pFormatCtx->flags |= AVFMT_FLAG_NONBLOCK;<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>pFormatCtx->flags |= AVFMT_FLAG_DISCARD_CORRUPT;<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>pFormatCtx->flags |= AVFMT_FLAG_NOBUFFER;       <o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>av_dump_format(pFormatCtx, 0, fullRtspUri, 0);<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    <o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>int videoStreamInd = -1;<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>for (int i = 0; i < pFormatCtx->nb_streams; i++)<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>{<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    AVStream* stream = pFormatCtx->streams[i];<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    if (stream->codecpar->codec_type == AVMEDIA_TYPE_VIDEO)<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    {<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>        if (videoStreamInd == -1)<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>        {<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>            videoStreamInd = i;<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>            break;<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>        }<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    }   <o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>}<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p> </o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>if (videoStreamInd == -1)<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    return; <o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>auto videoStream = pFormatCtx->streams[videoStreamInd];<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p> </o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>isRunning = true;<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>while(isRunning)<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>{<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    ret = av_read_frame(pFormatCtx, avPacket);<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    if (ret < 0)<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>        return; <o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p> </o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    if (avPacket->stream_index != videoStreamInd)<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>        continue;<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    <o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>    //Code for render process here............<o:p></o:p></span></p><p class=MsoNormal style='vertical-align:baseline'><span style='font-size:10.0pt;font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>}</span><span style='font-size:10.0pt;font-family:"var(--ff-mono)",serif'><o:p></o:p></span></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729;background:white'>I have read through this NVR API documentation and see support for 2x, 4x speed play as below<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729;background:white'><o:p> </o:p></span></p><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>Play in </span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>2</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>× Speed:<o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>PLAY rtsp:</span></code><span class=hljs-comment><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>//10.17.133.46:554/ISAPI/streaming/tracks/101?starttime=20170313T230652Z&endtime=20170314T025706Z RTSP/1.0</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>CSeq:</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>6</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>Authorization: Digest username=</span></code><span class=hljs-string><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>"admin"</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>, <o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>realm=</span></code><span class=hljs-string><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>"4419b66d2485"</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>, <o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>nonce=</span></code><span class=hljs-string><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>"a0ecd9b1586ff9461f02f910035d0486"</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>, <o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>uri=</span></code><span class=hljs-string><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>"rtsp://10.17.133.46:554/ISAPI/streaming/tracks/101?starttime=20170313T230652Z&endtime=20170314T025706Z"</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>, <o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>response=</span></code><span class=hljs-string><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>"fb986d385a7d839052ec4f0b2b70c631"</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>Session:</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>2049381566</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>;timeout=</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>60</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>Scale:</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>2.000</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>User-Agent:NKPlayer</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>-1.00.00.081112</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p> </o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>RTSP/</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>1.0</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'> </span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>200</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'> OK<o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>CSeq: </span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>6</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>Session: </span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>2049381566</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>Scale: </span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>2.000</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>RTP-Info: url=trackID=</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>1</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>;seq=</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>1</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>,url=trackID=</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>2</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>;seq=</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>1</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>Date: Tue, Mar </span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>14</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'> </span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>2017</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'> </span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>10</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>:</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>57</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>:</span></code><span class=hljs-number><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'>24</span></span><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'> GMT<o:p></o:p></span></code></pre><pre style='vertical-align:baseline'><code><span style='font-family:"inherit",serif;border:none windowtext 1.0pt;padding:0in'><o:p> </o:p></span></code></pre><pre style='vertical-align:baseline'><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729;background:white'>How to play RTSP video with speeds of 0.5x, 2x, 4x ...? Everyone who can assist me in this case, I am very grateful.<o:p></o:p></span></pre><pre style='vertical-align:baseline'><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729;background:white'><o:p> </o:p></span></pre><pre style='vertical-align:baseline'><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729;background:white'>For easy to read code, you can read my question in stackoverflow:<o:p></o:p></span></pre><pre style='vertical-align:baseline'><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729;background:white'><a href="https://stackoverflow.com/questions/67474396/ffmpeg-implement-rtsp-client-high-speed-playback">https://stackoverflow.com/questions/67474396/ffmpeg-implement-rtsp-client-high-speed-playback</a><o:p></o:p></span></pre><pre style='vertical-align:baseline'><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729;background:white'><o:p> </o:p></span></pre><pre style='vertical-align:baseline'><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729;background:white'>Many thanks!<o:p></o:p></span></pre><pre style='vertical-align:baseline'><span style='font-size:11.5pt;font-family:"Segoe UI",sans-serif;color:#242729;background:white'>Phong</span><span style='font-family:"var(--ff-mono)",serif'><o:p></o:p></span></pre><p class=MsoNormal><o:p> </o:p></p></div></body></html>