No subject


Tue Nov 17 13:52:17 UTC 2009


for audio tracks generated by Avformatdecoder.
I submitted my suggested patch to the ticket.

What are your thoughts ?


On Sat, Dec 5, 2009 at 2:16 PM, MythTV <mythtv at cvs.mythtv.org> wrote:

> #7638: DVD: wrong audio track selected when switching
>
> ------------------------------------+------------------------------------=
---
>  Reporter:  linux@=85                 |       Owner:  skamithi
>     Type:  defect                  |      Status:  accepted
>  Priority:  minor                   |   Milestone:  unknown
> Component:  MythTV - General        |     Version:  unknown
>  Severity:  medium                  |     Mlocked:  0
>
> ------------------------------------+------------------------------------=
---
>
> Comment(by linux@=85):
>
>  Hi,
>
>  dvd-audio-stream-ordering-v2.patch does not work for me, namely because
>  dvdnav_get_audio_logical_stream does not work as expected. If you feed i=
t
>  the stream id the output will always be -1 (from looking at the code I
>  guess it only maps some internal numbers as the input stream id must be =
<=3D
>  8 to get anything besides -1). So in fact your patch will behave exactly
>  as before my original patch as dvd_track_num will always be set to -1.
>
>  In my second patch (dvd-audio-stream-ordering.dpatch) I have actually pu=
t
>  the functionality that one thinks dvdnav_get_audio_logical_stream provid=
es
>  in the function dvd_get_logical_audio_stream_id. It will map the stream
>  ids to their logical track nos (the disc I am always having problems wit=
h
>  has a mix of AC3 and DTS tracks and the problem is that the AC3 tracks
>  have a stream id range between 128 and 135 while DTS tracks start a 136;
>  so in my example, the second logical track has stream id 137 which used =
to
>  be put at the end of the track map by simple sorting).
>
>  I personally think that providing the dvd-specific comparator for the
>  sorting a simpler solution now as it keeps irrelevant dvd-specific stuff
>  out of StreamInfo and its operator which seems to be a more generic
>  structure. The sorting only happens in the DVD case anyway so having a D=
VD
>  specific comparator should not be a problem.
>
>  As a sidenote, I was also wondering of whether the helper functions I
>  added belong into avformatdecoder.cpp or DVDRingbuffer.h and it should b=
e
>  no problem to move them there.
>
>  Best wishes,
>
>  Martin.
>
> --
> Ticket URL: <http://svn.mythtv.org/trac/ticket/7638#comment:6>
> MythTV <http://www.mythtv.org/>
> MythTV
> _______________________________________________
> mythtv-commits mailing list
> mythtv-commits at mythtv.org
> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-commits
>

--000e0cdf75f8bff001047a6e2b5f
Content-Type: text/html; charset=windows-1252
Content-Transfer-Encoding: quoted-printable

<br>i get your point about not populating the streaminfo field with extra f=
ields.<br><br>How about replacing the physical stream id with a logical str=
eam id for during the creation of the audio track Streaminfo,=A0 then you c=
an go ahead and fix the dvdnav physical id -&gt; logical id conversion code=
?=A0 I&#39;d fix the dvdnav code myself, but I don&#39;t have much time to =
look into it.<br>
<br>This way=A0 we keep irrelevant dvd specific stuff out of streaminfo,=A0=
 like you pointed out,=A0 and also avoid code duplication like I suggest.<b=
r><br><br>From my search of the code, I don&#39;t see any call to Streaminf=
o&#39;s stream_id for audio tracks generated by Avformatdecoder.<br>
I submitted my suggested patch to the ticket. <br><br>What are your thought=
s ?<br><br><br><div class=3D"gmail_quote">On Sat, Dec 5, 2009 at 2:16 PM, M=
ythTV <span dir=3D"ltr">&lt;<a href=3D"mailto:mythtv at cvs.mythtv.org">mythtv=
@cvs.mythtv.org</a>&gt;</span> wrote:<br>
<blockquote class=3D"gmail_quote" style=3D"border-left: 1px solid rgb(204, =
204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class=3D"im"=
>#7638: DVD: wrong audio track selected when switching<br>
------------------------------------+--------------------------------------=
-<br>
=A0Reporter: =A0linux@=85 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0 =A0 =A0 Own=
er: =A0skamithi<br>
 =A0 =A0 Type: =A0defect =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 =A0 =A0St=
atus: =A0accepted<br>
=A0Priority: =A0minor =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 | =A0 Milestone: =
=A0unknown<br>
Component: =A0MythTV - General =A0 =A0 =A0 =A0| =A0 =A0 Version: =A0unknown=
<br>
=A0Severity: =A0medium =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0| =A0 =A0 Mlocked=
: =A00<br>
------------------------------------+--------------------------------------=
-<br>
<br>
</div>Comment(by linux@=85):<br>
<br>
=A0Hi,<br>
<br>
=A0dvd-audio-stream-ordering-v2.patch does not work for me, namely because<=
br>
=A0dvdnav_get_audio_logical_stream does not work as expected. If you feed i=
t<br>
=A0the stream id the output will always be -1 (from looking at the code I<b=
r>
=A0guess it only maps some internal numbers as the input stream id must be =
&lt;=3D<br>
=A08 to get anything besides -1). So in fact your patch will behave exactly=
<br>
=A0as before my original patch as dvd_track_num will always be set to -1.<b=
r>
<br>
=A0In my second patch (dvd-audio-stream-ordering.dpatch) I have actually pu=
t<br>
=A0the functionality that one thinks dvdnav_get_audio_logical_stream provid=
es<br>
=A0in the function dvd_get_logical_audio_stream_id. It will map the stream<=
br>
=A0ids to their logical track nos (the disc I am always having problems wit=
h<br>
=A0has a mix of AC3 and DTS tracks and the problem is that the AC3 tracks<b=
r>
=A0have a stream id range between 128 and 135 while DTS tracks start a 136;=
<br>
=A0so in my example, the second logical track has stream id 137 which used =
to<br>
=A0be put at the end of the track map by simple sorting).<br>
<br>
=A0I personally think that providing the dvd-specific comparator for the<br=
>
=A0sorting a simpler solution now as it keeps irrelevant dvd-specific stuff=
<br>
=A0out of StreamInfo and its operator which seems to be a more generic<br>
=A0structure. The sorting only happens in the DVD case anyway so having a D=
VD<br>
=A0specific comparator should not be a problem.<br>
<br>
=A0As a sidenote, I was also wondering of whether the helper functions I<br=
>
=A0added belong into avformatdecoder.cpp or DVDRingbuffer.h and it should b=
e<br>
=A0no problem to move them there.<br>
<br>
=A0Best wishes,<br>
<br>
=A0Martin.<br>
<font color=3D"#888888"><br>
--<br>
Ticket URL: &lt;<a href=3D"http://svn.mythtv.org/trac/ticket/7638#comment:6=
" target=3D"_blank">http://svn.mythtv.org/trac/ticket/7638#comment:6</a>&gt=
;<br>
</font><div><div></div><div class=3D"h5">MythTV &lt;<a href=3D"http://www.m=
ythtv.org/" target=3D"_blank">http://www.mythtv.org/</a>&gt;<br>
MythTV<br>
_______________________________________________<br>
mythtv-commits mailing list<br>
<a href=3D"mailto:mythtv-commits at mythtv.org">mythtv-commits at mythtv.org</a><=
br>
<a href=3D"http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-commits" targe=
t=3D"_blank">http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-commits</a><=
br>
</div></div></blockquote></div><br>

--000e0cdf75f8bff001047a6e2b5f--


More information about the mythtv-dev mailing list