| 257 | 258 | {"noclosed_gop", &xvidenc_closed_gop, CONF_TYPE_FLAG, 0, 1, 0, NULL}, |
| 258 | 259 | {"interlacing", &xvidenc_interlaced, CONF_TYPE_FLAG, 0, 0, 1, NULL}, |
| 259 | 260 | {"nointerlacing", &xvidenc_interlaced, CONF_TYPE_FLAG, 0, 1, 0, NULL}, |
| 260 | 262 | {"cartoon", &xvidenc_cartoon, CONF_TYPE_FLAG, 0, 0, 1, NULL}, |
| 261 | 263 | {"nocartoon", &xvidenc_cartoon, CONF_TYPE_FLAG, 0, 1, 0, NULL}, |
| 262 | 264 | {"hq_ac", &xvidenc_hqacpred, CONF_TYPE_FLAG, 0, 0, 1, NULL}, |
| | 1301 | /* Set interlacing flags */ |
| | 1302 | if (frame->vol_flags & XVID_VOL_INTERLACING) { |
| | 1303 | if (xvidenc_top==-1) { |
| | 1304 | // this piece doesn't work - don't know why mpi->fields are always 0 |
| | 1305 | //mp_msg(MSGT_DECVIDEO, MSGL_INFO, "mpi->fields=%X %d\n", mpi->fields, mpi->fields); |
| | 1306 | if ((mpi->fields & MP_IMGFIELD_ORDERED) && (mpi->fields & MP_IMGFIELD_INTERLACED)) |
| | 1307 | if (mpi->fields & MP_IMGFIELD_TOP_FIRST) |
| | 1308 | frame->vop_flags |= XVID_VOP_TOPFIELDFIRST; |
| | 1309 | else |
| | 1310 | frame->vop_flags &= ~XVID_VOP_TOPFIELDFIRST; |
| | 1311 | } |
| | 1312 | else { |
| | 1313 | if (xvidenc_top==1) |
| | 1314 | frame->vop_flags |= XVID_VOP_TOPFIELDFIRST; |
| | 1315 | else |
| | 1316 | frame->vop_flags &= ~XVID_VOP_TOPFIELDFIRST; |
| | 1317 | } |
| | 1318 | } |
| | 1319 | |