580 |
|
|
581 |
create.global |= XVID_GLOBAL_CLOSED_GOP; |
create.global |= XVID_GLOBAL_CLOSED_GOP; |
582 |
|
|
583 |
/* dxn: restrict max bframes and enable packed bframes */ |
/* restrict max bframes */ |
584 |
if ((profiles[codec->config.profile].flags & PROFILE_EXTRA)) { |
if ((create.max_bframes > profiles[codec->config.profile].xvid_max_bframes) && (profiles[codec->config.profile].xvid_max_bframes >= 0)) |
|
|
|
|
if (create.max_bframes > profiles[codec->config.profile].xvid_max_bframes) |
|
585 |
create.max_bframes = profiles[codec->config.profile].xvid_max_bframes; |
create.max_bframes = profiles[codec->config.profile].xvid_max_bframes; |
586 |
|
|
587 |
|
/* DXN: enable packed bframes */ |
588 |
|
if ((profiles[codec->config.profile].flags & PROFILE_PACKED)) { |
589 |
create.global |= XVID_GLOBAL_PACKED; |
create.global |= XVID_GLOBAL_PACKED; |
590 |
} |
} |
591 |
} |
} |
630 |
|
|
631 |
LRESULT compress_end(CODEC * codec) |
LRESULT compress_end(CODEC * codec) |
632 |
{ |
{ |
633 |
|
if (codec==NULL) |
634 |
|
return ICERR_OK; |
635 |
|
|
636 |
if (codec->m_hdll != NULL) { |
if (codec->m_hdll != NULL) { |
637 |
if (codec->ehandle != NULL) { |
if (codec->ehandle != NULL) { |
638 |
codec->xvid_encore_func(codec->ehandle, XVID_ENC_DESTROY, NULL, NULL); |
codec->xvid_encore_func(codec->ehandle, XVID_ENC_DESTROY, NULL, NULL); |