r37362 - trunk/libmpdemux/demux_mpg.c
Author: SubJunk Date: Thu Jan 22 03:29:44 2015 New Revision: 37362 Log: Fixed support for DVD audio Modified: trunk/libmpdemux/demux_mpg.c Modified: trunk/libmpdemux/demux_mpg.c ============================================================================== --- trunk/libmpdemux/demux_mpg.c Sun Jan 18 20:39:27 2015 (r37361) +++ trunk/libmpdemux/demux_mpg.c Thu Jan 22 03:29:44 2015 (r37362) @@ -1107,6 +1107,13 @@ static demuxer_t* demux_mpg_ps_open(demu { sh_video_t *sh_video = demuxer->video->sh; + if(demuxer->audio->id!=-2) { + if(!ds_fill_buffer(demuxer->audio)){ + mp_msg(MSGT_DEMUXER,MSGL_INFO,"MPEG: " MSGTR_MissingAudioStream); + demuxer->audio->sh=NULL; + } + } + if(sh_video && !sh_video->format && ps_probe > 0) { int head; off_t pos = stream_tell(demuxer->stream);
On 22.01.2015, at 03:29, SubJunk <subversion@mplayerhq.hu> wrote:
Author: SubJunk Date: Thu Jan 22 03:29:44 2015 New Revision: 37362
Log: Fixed support for DVD audio
Modified: trunk/libmpdemux/demux_mpg.c
Modified: trunk/libmpdemux/demux_mpg.c ============================================================================== --- trunk/libmpdemux/demux_mpg.c Sun Jan 18 20:39:27 2015 (r37361) +++ trunk/libmpdemux/demux_mpg.c Thu Jan 22 03:29:44 2015 (r37362) @@ -1107,6 +1107,13 @@ static demuxer_t* demux_mpg_ps_open(demu { sh_video_t *sh_video = demuxer->video->sh;
+ if(demuxer->audio->id!=-2) { + if(!ds_fill_buffer(demuxer->audio)){ + mp_msg(MSGT_DEMUXER,MSGL_INFO,"MPEG: " MSGTR_MissingAudioStream); + demuxer->audio->sh=NULL; + } + }
Why? This is simply _wrong_ and I removed it for that reason. The video probe code below will end up throwing away more or less the first second of audio if you do this! Also DVD audio does work just fine, though setting ps_probe is necessary to have it detected reliably with e.g. -frames 0.
On Thu, Jan 22, 2015 at 05:24:39AM +0100, Reimar Döffinger wrote:
On 22.01.2015, at 03:29, SubJunk <subversion@mplayerhq.hu> wrote:
Author: SubJunk Date: Thu Jan 22 03:29:44 2015 New Revision: 37362
Log: Fixed support for DVD audio
Modified: trunk/libmpdemux/demux_mpg.c
Modified: trunk/libmpdemux/demux_mpg.c ============================================================================== --- trunk/libmpdemux/demux_mpg.c Sun Jan 18 20:39:27 2015 (r37361) +++ trunk/libmpdemux/demux_mpg.c Thu Jan 22 03:29:44 2015 (r37362) @@ -1107,6 +1107,13 @@ static demuxer_t* demux_mpg_ps_open(demu { sh_video_t *sh_video = demuxer->video->sh;
+ if(demuxer->audio->id!=-2) { + if(!ds_fill_buffer(demuxer->audio)){ + mp_msg(MSGT_DEMUXER,MSGL_INFO,"MPEG: " MSGTR_MissingAudioStream); + demuxer->audio->sh=NULL; + } + }
Why? This is simply _wrong_ and I removed it for that reason. The video probe code below will end up throwing away more or less the first second of audio if you do this! Also DVD audio does work just fine, though setting ps_probe is necessary to have it detected reliably with e.g. -frames 0.
Ping? As I know that it breaks some things, I will revert/disable this unless I can get a test-case to properly fix it. There might be an argument to have ps_probe set to some value > 0 by default.
On 2015-02-02 22:45 +0100, Reimar Döffinger wrote:
On Thu, Jan 22, 2015 at 05:24:39AM +0100, Reimar Döffinger wrote:
On 22.01.2015, at 03:29, SubJunk <subversion@mplayerhq.hu> wrote:
Author: SubJunk Date: Thu Jan 22 03:29:44 2015 New Revision: 37362
Log: Fixed support for DVD audio
Modified: trunk/libmpdemux/demux_mpg.c
Modified: trunk/libmpdemux/demux_mpg.c ============================================================================== --- trunk/libmpdemux/demux_mpg.c Sun Jan 18 20:39:27 2015 (r37361) +++ trunk/libmpdemux/demux_mpg.c Thu Jan 22 03:29:44 2015 (r37362) @@ -1107,6 +1107,13 @@ static demuxer_t* demux_mpg_ps_open(demu { sh_video_t *sh_video = demuxer->video->sh;
+ if(demuxer->audio->id!=-2) { + if(!ds_fill_buffer(demuxer->audio)){ + mp_msg(MSGT_DEMUXER,MSGL_INFO,"MPEG: " MSGTR_MissingAudioStream); + demuxer->audio->sh=NULL; + } + }
Why? This is simply _wrong_ and I removed it for that reason. The video probe code below will end up throwing away more or less the first second of audio if you do this! Also DVD audio does work just fine, though setting ps_probe is necessary to have it detected reliably with e.g. -frames 0.
Ping?
Maybe Klaus is currently not subscribed to -csvlog ? Please re-revert this.
As I know that it breaks some things, I will revert/disable this unless I can get a test-case to properly fix it. There might be an argument to have ps_probe set to some value > 0 by default.
@Klaus: For further discussion please also look into ticket #2219: https://trac.mplayerhq.hu/ticket/2219 Alexander
On 2015-02-06 14:33 +0100, Alexander Strasser wrote:
On 2015-02-02 22:45 +0100, Reimar Döffinger wrote:
On Thu, Jan 22, 2015 at 05:24:39AM +0100, Reimar Döffinger wrote:
On 22.01.2015, at 03:29, SubJunk <subversion@mplayerhq.hu> wrote:
Author: SubJunk Date: Thu Jan 22 03:29:44 2015 New Revision: 37362
Log: Fixed support for DVD audio
Modified: trunk/libmpdemux/demux_mpg.c
Modified: trunk/libmpdemux/demux_mpg.c ============================================================================== --- trunk/libmpdemux/demux_mpg.c Sun Jan 18 20:39:27 2015 (r37361) +++ trunk/libmpdemux/demux_mpg.c Thu Jan 22 03:29:44 2015 (r37362) @@ -1107,6 +1107,13 @@ static demuxer_t* demux_mpg_ps_open(demu { sh_video_t *sh_video = demuxer->video->sh;
+ if(demuxer->audio->id!=-2) { + if(!ds_fill_buffer(demuxer->audio)){ + mp_msg(MSGT_DEMUXER,MSGL_INFO,"MPEG: " MSGTR_MissingAudioStream); + demuxer->audio->sh=NULL; + } + }
Why? This is simply _wrong_ and I removed it for that reason. The video probe code below will end up throwing away more or less the first second of audio if you do this! Also DVD audio does work just fine, though setting ps_probe is necessary to have it detected reliably with e.g. -frames 0.
Ping?
Maybe Klaus is currently not subscribed to -csvlog ?
I received this from Klaus in private: "My main usage cases for MPlayer/MEncoder are in Universal Media Server, and on our forums we had several users complain of no audio after the commit I reverted (http://www.universalmediaserver.com/forum/viewtopic.php?f=9&t=2782), and they then confirmed that the reversion fixed the issue, as well as that being the case in my own testing." @Klaus: If you are not subscribed to this list, please do. Otherwise just mail me again and I will try to find out why you cannot post to the list. It is important for committers to be subscribed to this list because, if there are any complaints about your commits they will usually be voiced here.
Please re-revert this.
As I know that it breaks some things, I will revert/disable this unless I can get a test-case to properly fix it. There might be an argument to have ps_probe set to some value > 0 by default.
Maybe setting psprobe default to a sensible value wil fix the problems for you and your users. Also if you didn't do already, please have a look at the ticket mentioned below; especially the later comments.
@Klaus: For further discussion please also look into ticket #2219:
Alexander
participants (3)
-
Alexander Strasser -
Reimar Döffinger -
SubJunk