Dear zhivago,<div><br></div><div>you can try to set pkt1.pts = 0, and the ffmpeg will calculate for this packet.</div><div><br></div><div><br></div><div>Regards, Eric Hsieh, 09/17<br><br><div class="gmail_quote">2011/9/17 zhivago <span dir="ltr"><<a href="mailto:zhivagoserg@yandex.ua">zhivagoserg@yandex.ua</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Help me please properly set the timestamps. I have created an output filter,<br>
which takes video (MEDIASUBTAYPE_H264) and audio (MEDIASUBTAYPE_AAC). I have<br>
to put it all into a container FLV. To mix the streams, I use libav. How to<br>
calculate for AVPacket presentation timestamp (pts).<br>
<br>
    static const REFERENCE_TIME UNITS_PER_SECOND = 10000000i64;<br>
         ....<br>
    REFERENCE_TIME startTime = m_lastSampleTime.startTime;<br>
<br>
    AVPacket pkt;<br>
    av_init_packet( &pkt );<br>
    pkt.data = pbData;<br>
    pkt.size = lDataLength;<br>
    pkt.flags |= AV_PKT_FLAG_KEY;<br>
<br>
    if ( video )<br>
    {<br>
        ASSERT( m_codecContextVideo );<br>
<br>
        num = m_codecContextVideo->time_base.num;<br>
        den = m_codecContextVideo->time_base.den;<br>
<br>
        pkt1.pts          ??? // = ::MulDiv( startTime * den, 1, num *<br>
UNITS_PER_SECOND );<br>
        pkt1.stream_index = m_streamVideoOutput->index;<br>
    }<br>
    else<br>
    {<br>
       ASSERT( m_codecContextAudio );<br>
<br>
       num = m_codecContextAudio->time_base.num;<br>
       den = m_codecContextAudio->time_base.den;<br>
<br>
       pkt1.pts          ??? // = ::MulDiv( startTime * den, 1, num *<br>
UNITS_PER_SECOND );<br>
       pkt1.stream_index = m_streamAudioOutput->index;<br>
    }<br>
<br>
    ASSERT( m_formatContextOutput );<br>
<br>
    if ( AllConnected() )<br>
    {<br>
<br>
        av_interleaved_write_frame( m_formatContextOutput, &pkt1 );<br>
    }<br>
    else<br>
    {<br>
        av_write_frame( m_formatContextOutput, &pkt1 );<br>
    }<br>
<font color="#888888"><br>
--<br>
View this message in context: <a href="http://libav-users.943685.n4.nabble.com/Timestamps-for-AVPaket-tp3818534p3818534.html" target="_blank">http://libav-users.943685.n4.nabble.com/Timestamps-for-AVPaket-tp3818534p3818534.html</a><br>

Sent from the libav-users mailing list archive at Nabble.com.<br>
_______________________________________________<br>
Libav-user mailing list<br>
<a href="mailto:Libav-user@ffmpeg.org">Libav-user@ffmpeg.org</a><br>
<a href="http://ffmpeg.org/mailman/listinfo/libav-user" target="_blank">http://ffmpeg.org/mailman/listinfo/libav-user</a><br>
</font></blockquote></div><br></div>