Changeset 7c359c66acbc65bede22e11bf6e8a510fbac5fc7
- Timestamp:
- 05/23/08 23:59:16
(4 months ago)
- Author:
- Pierre d'Herbemont <pdherbemont@videolan.org>
- git-committer:
- Pierre d'Herbemont <pdherbemont@videolan.org> 1211579956 +0200
- git-parent:
[8fe54e490872687b20e52581d84a94ffa7f443b0]
- git-author:
- Pierre d'Herbemont <pdherbemont@videolan.org> 1211575664 +0200
- Message:
transcode: Measure the time taken to encode one audio or video frame.
-
Files:
-
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
| rcdd5175 |
r7c359c6 |
|
| 178 | 178 | STATS_TIMER_INPUT_LAUNCHING, |
|---|
| 179 | 179 | STATS_TIMER_MODULE_NEED, |
|---|
| | 180 | STATS_TIMER_VIDEO_FRAME_ENCODING, |
|---|
| | 181 | STATS_TIMER_AUDIO_FRAME_ENCODING, |
|---|
| 180 | 182 | |
|---|
| 181 | 183 | STATS_TIMER_SKINS_PLAYTREE_IMAGE, |
|---|
| r13ae40b |
r7c359c6 |
|
| 1223 | 1223 | |
|---|
| 1224 | 1224 | /**************************************************************************** |
|---|
| | 1225 | * decoder helper |
|---|
| | 1226 | ****************************************************************************/ |
|---|
| | 1227 | static inline void video_timer_start( encoder_t * p_encoder ) |
|---|
| | 1228 | { |
|---|
| | 1229 | stats_TimerStart( p_encoder, "encoding video frame", |
|---|
| | 1230 | STATS_TIMER_VIDEO_FRAME_ENCODING ); |
|---|
| | 1231 | } |
|---|
| | 1232 | |
|---|
| | 1233 | static inline void video_timer_stop( encoder_t * p_encoder ) |
|---|
| | 1234 | { |
|---|
| | 1235 | stats_TimerStop( p_encoder, STATS_TIMER_VIDEO_FRAME_ENCODING ); |
|---|
| | 1236 | } |
|---|
| | 1237 | |
|---|
| | 1238 | static inline void video_timer_close( encoder_t * p_encoder ) |
|---|
| | 1239 | { |
|---|
| | 1240 | stats_TimerDump( p_encoder, STATS_TIMER_VIDEO_FRAME_ENCODING ); |
|---|
| | 1241 | stats_TimerClean( p_encoder, STATS_TIMER_VIDEO_FRAME_ENCODING ); |
|---|
| | 1242 | } |
|---|
| | 1243 | |
|---|
| | 1244 | static inline void audio_timer_start( encoder_t * p_encoder ) |
|---|
| | 1245 | { |
|---|
| | 1246 | stats_TimerStart( p_encoder, "encoding audio frame", |
|---|
| | 1247 | STATS_TIMER_AUDIO_FRAME_ENCODING ); |
|---|
| | 1248 | } |
|---|
| | 1249 | |
|---|
| | 1250 | static inline void audio_timer_stop( encoder_t * p_encoder ) |
|---|
| | 1251 | { |
|---|
| | 1252 | stats_TimerStop( p_encoder, STATS_TIMER_AUDIO_FRAME_ENCODING ); |
|---|
| | 1253 | } |
|---|
| | 1254 | |
|---|
| | 1255 | static inline void audio_timer_close( encoder_t * p_encoder ) |
|---|
| | 1256 | { |
|---|
| | 1257 | stats_TimerDump( p_encoder, STATS_TIMER_AUDIO_FRAME_ENCODING ); |
|---|
| | 1258 | stats_TimerClean( p_encoder, STATS_TIMER_AUDIO_FRAME_ENCODING ); |
|---|
| | 1259 | } |
|---|
| | 1260 | |
|---|
| | 1261 | /**************************************************************************** |
|---|
| 1225 | 1262 | * decoder reencoder part |
|---|
| 1226 | 1263 | ****************************************************************************/ |
|---|
| | 1264 | |
|---|
| 1227 | 1265 | static int audio_BitsPerSample( vlc_fourcc_t i_format ) |
|---|
| 1228 | 1266 | { |
|---|
| … | … | |
| 1501 | 1539 | int i; |
|---|
| 1502 | 1540 | |
|---|
| | 1541 | audio_timer_close( id->p_encoder ); |
|---|
| | 1542 | |
|---|
| 1503 | 1543 | /* Close decoder */ |
|---|
| 1504 | 1544 | if( id->p_decoder->p_module ) |
|---|
| … | … | |
| 1593 | 1633 | p_audio_buf->end_date = p_audio_block->i_dts + p_audio_block->i_length; |
|---|
| 1594 | 1634 | |
|---|
| | 1635 | audio_timer_start( id->p_encoder ); |
|---|
| 1595 | 1636 | p_block = id->p_encoder->pf_encode_audio( id->p_encoder, p_audio_buf ); |
|---|
| | 1637 | audio_timer_stop( id->p_encoder ); |
|---|
| | 1638 | |
|---|
| 1596 | 1639 | block_ChainAppend( out, p_block ); |
|---|
| 1597 | 1640 | block_Release( p_audio_block ); |
|---|
| … | … | |
| 2146 | 2189 | vlc_cond_destroy( &p_stream->p_sys->cond ); |
|---|
| 2147 | 2190 | } |
|---|
| | 2191 | |
|---|
| | 2192 | video_timer_close( id->p_encoder ); |
|---|
| 2148 | 2193 | |
|---|
| 2149 | 2194 | /* Close decoder */ |
|---|
| … | … | |
| 2456 | 2501 | { |
|---|
| 2457 | 2502 | block_t *p_block; |
|---|
| | 2503 | |
|---|
| | 2504 | video_timer_start( id->p_encoder ); |
|---|
| 2458 | 2505 | p_block = id->p_encoder->pf_encode_video( id->p_encoder, p_pic ); |
|---|
| | 2506 | video_timer_stop( id->p_encoder ); |
|---|
| | 2507 | |
|---|
| 2459 | 2508 | block_ChainAppend( out, p_block ); |
|---|
| 2460 | 2509 | } |
|---|
| … | … | |
| 2553 | 2602 | vlc_mutex_unlock( &p_sys->lock_out ); |
|---|
| 2554 | 2603 | |
|---|
| | 2604 | video_timer_start( id->p_encoder ); |
|---|
| 2555 | 2605 | p_block = id->p_encoder->pf_encode_video( id->p_encoder, p_pic ); |
|---|
| | 2606 | video_timer_stop( id->p_encoder ); |
|---|
| | 2607 | |
|---|
| 2556 | 2608 | vlc_mutex_lock( &p_sys->lock_out ); |
|---|
| 2557 | 2609 | block_ChainAppend( &p_sys->p_buffers, p_block ); |
|---|