OSDN Git Service
(root)
/
handbrake-jp
/
handbrake-jp-git.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
LinGui: make Help->Guide work on windows/mingw
[handbrake-jp/handbrake-jp-git.git]
/
libhb
/
sync.c
diff --git
a/libhb/sync.c
b/libhb/sync.c
index
3601780
..
9c36ee3
100644
(file)
--- a/
libhb/sync.c
+++ b/
libhb/sync.c
@@
-116,7
+116,7
@@
hb_work_object_t * hb_sync_init( hb_job_t * job )
pv->common = calloc( 1, sizeof( hb_sync_common_t ) );
pv->common->ref++;
pv->common->mutex = hb_lock_init();
pv->common = calloc( 1, sizeof( hb_sync_common_t ) );
pv->common->ref++;
pv->common->mutex = hb_lock_init();
- pv->common->audio_pts_thresh =
0
;
+ pv->common->audio_pts_thresh =
-1
;
pv->common->next_frame = hb_cond_init();
pv->common->pts_count = 1;
if ( job->frame_to_start || job->pts_to_start )
pv->common->next_frame = hb_cond_init();
pv->common->pts_count = 1;
if ( job->frame_to_start || job->pts_to_start )
@@
-566,7
+566,8
@@
int syncVideoWork( hb_work_object_t * w, hb_buffer_t ** buf_in,
subtitle->source == CC708SUB ||
subtitle->source == SRTSUB ||
subtitle->source == UTF8SUB ||
subtitle->source == CC708SUB ||
subtitle->source == SRTSUB ||
subtitle->source == UTF8SUB ||
- subtitle->source == TX3GSUB)
+ subtitle->source == TX3GSUB ||
+ subtitle->source == SSASUB)
{
/*
* Rewrite timestamps on subtitles that came from Closed Captions
{
/*
* Rewrite timestamps on subtitles that came from Closed Captions
@@
-930,6
+931,13
@@
static int syncAudioWork( hb_work_object_t * w, hb_buffer_t ** buf_in,
hb_lock( pv->common->mutex );
while ( !pv->common->start_found )
{
hb_lock( pv->common->mutex );
while ( !pv->common->start_found )
{
+ if ( pv->common->audio_pts_thresh < 0 )
+ {
+ // I would initialize this in hb_sync_init, but
+ // job->pts_to_start can be modified by reader
+ // after hb_sync_init is called.
+ pv->common->audio_pts_thresh = job->pts_to_start;
+ }
if ( buf->start < pv->common->audio_pts_thresh )
{
hb_buffer_close( &buf );
if ( buf->start < pv->common->audio_pts_thresh )
{
hb_buffer_close( &buf );