Changes between Version 3 and Version 4 of Ticket #941, comment 5


Ignore:
Timestamp:
Feb 4, 2012, 7:59:43 AM (4 years ago)
Author:
DonMoir
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #941, comment 5

    v3 v4  
    44static void check_index_entries ( 
    55// Creates the index_entries prior to seeking if needbe. 
    6 cFFmpegPlayer* pPlayer, uint32_t streamIndex, int64_t timestamp, struct ogg_stream* pOggStream) 
     6cFFmpegPlayer* pPlayer, uint32_t streamIndex, int64_t timestamp) 
    77{ 
    88    AVFormatContext *pFmtCtx = pPlayer->pFormatCtx; 
     
    2525    while (!pPlayer->bAllDone && !pPlayer->m_bThreadStopSeek) 
    2626    { 
    27         if (pOggStream) 
    28             pOggStream->keyframe_seek = 1; 
    2927        if (p_av_read_frame (pFmtCtx,&packet)) 
    3028            break; 
     
    4442} 
    4543}}} 
    46  
    47 Note this code in the above just after the while statement: 
    48  
    49 {{{ 
    50         if (pOggStream) 
    51             pOggStream->keyframe_seek = 1; 
    52 }}} 
    53  
    54 This just speeds up the check_index_entries function a bit, but still there are going to faster ways to create the index_entries for ogg. I am not sure this is 100 percent accurate and I may remove this. av_read_frame will set this back to 0 via ogg_read_packet. 
    5544 
    5645I mentioned I had some other odd behavior with some ogg files. For my app this showed up as frames not displaying for some time after a seek. In other apps you will see other odd behavior like incomplete frames, audio out of sync, or just weirdness.