diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2008-11-23 12:45:07 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2008-11-23 12:45:07 +0000 |
commit | c8993e3c662fee3dc0ffc357ff36f622b8edece1 (patch) | |
tree | b4d8cefd1f02e15171d6a7b3a5386e891159a897 /mplayer.c | |
parent | 9542118efe9ace06ae86a8485053d7249488a251 (diff) | |
download | mpv-c8993e3c662fee3dc0ffc357ff36f622b8edece1.tar.bz2 mpv-c8993e3c662fee3dc0ffc357ff36f622b8edece1.tar.xz |
Reimplement -endchapter support again for -dump*, it was broken in r25987.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@27987 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'mplayer.c')
-rw-r--r-- | mplayer.c | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -3167,6 +3167,12 @@ if(stream_dump_type==5){ exit_player(MSGTR_Exit_error); } } + if(dvd_last_chapter > 0) { + int chapter = -1; + if (stream_control(mpctx->stream, STREAM_CTRL_GET_CURRENT_CHAPTER, + &chapter) == STREAM_OK && chapter + 1 > dvd_last_chapter) + break; + } } if(fclose(f)) { mp_msg(MSGT_MENCODER,MSGL_FATAL,MSGTR_ErrorWritingFile,stream_dump_name); @@ -3353,6 +3359,11 @@ if((stream_dump_type)&&(stream_dump_type<4)){ if( (mpctx->demuxer->file_format==DEMUXER_TYPE_AVI || mpctx->demuxer->file_format==DEMUXER_TYPE_ASF || mpctx->demuxer->file_format==DEMUXER_TYPE_MOV) && stream_dump_type==2) fwrite(&in_size,1,4,f); if(in_size>0) fwrite(start,in_size,1,f); + if(dvd_last_chapter>0) { + int cur_chapter = demuxer_get_current_chapter(mpctx->demuxer); + if(cur_chapter!=-1 && cur_chapter+1>dvd_last_chapter) + break; + } } fclose(f); mp_msg(MSGT_CPLAYER,MSGL_INFO,MSGTR_CoreDumped); |