[mythtvnz] Question about building Pauls Mythtv + Patches

Paul Kendall paul at kcbbs.gen.nz
Sun Aug 24 08:12:24 BST 2008


On Sunday 24 August 2008 17:46:28 Steven Ellis wrote:
> On 24/08/2008, at 5:10 PM, Steven Ellis wrote:
> > On 24/08/2008, at 2:57 PM, Steven Ellis wrote:
> >> On 24/08/2008, at 2:18 PM, Graeme Woollett wrote:
> >>> Sorry if I've missed the obvious places for the instructions.  I can
> >>> only find references to the tar ball...
> >>>
> >>> This is the deb for the binary
> >>>
> >>> deb http://ppa.launchpad.net/paul-kcbbs/ubuntu hardy main
> >>
> >> Add the following for getting the source as well
> >>
> >> deb-src http://ppa.launchpad.net/paul-kcbbs/ubuntu hardy main
> >>
> >>> Are there deb-source packages available that can be modified and
> >>> built
> >>> into debs the "debian way " rather then the tar ball approach.
> >>>
> >>> This way all the development file dependencies are taken care of
> >>> making
> >>> the source much easier to build
> >>>
> >>> If so what is the deb-src line I need to use, what does the apt-
> >>> get line
> >>> look like?
> >>>
> >>> My CPU isn't quite fast enough for TV3 so I need to make binaries
> >>> that
> >>> have it enabled.
> >>
> >> Thinking the same myself
> >>
> >>> Thats unless somebody else has made some custom debs with it
> >>> enabled?
> >>>
> >>> I'm quite happy changing files but don't have the time to manually
> >>> satisfy all the dev dependencies.
> >>
> >> mkdir src
> >> cd src
> >> sudo apt-get source mythtv
> >> sudo apt-get build-dep mythtv
> >>
> >> You should then have an Ubuntu/Debian friendly build tree to play
> >> with.
> >
> > Well I just had a try with the skip loop filter patch which helped a
> > little bit.
> >
> > Also tried running the system with a CPU disabled to see how it
> > would affect performance and it made the HD channels unusable on an
> > AMD 3600 X2.
> >
> > Going to try a rebuild with CODEC_FLAG2_FAST enabled in addition to
> > the skiploopfilter.
>
> My current patch to  libs/libmythtv/avformatdecoder.cpp around line
> 1588  is as follows
>
>                  if (CODEC_ID_H264 == enc->codec_id)
>                  {
>                     VERBOSE(VB_PLAYBACK, LOC + "Turning off loop
> filter");
>                       enc->skip_loop_filter = AVDISCARD_ALL;
>                     VERBOSE(VB_PLAYBACK, LOC + "Enabling Fast decode
> mode");
>                       enc->flags           |= CODEC_FLAG2_FAST;
>                   }
>
> This appears to give me a 4-5 % boost on the SD channels, and possibly
> 15-30% on the HD channels. It is hard to tell on TV One HD at the
> moment as the bitrate for the sports is all over the place. TV3 is
> almost watch-able on my CPU so hopefully Graeme will get full support
> on his 5600 X2. Watching TV2 now sits at an average of 70-80% rather
> than close to 100%.
>
> Paul - I'd love to get any additional patches you have to stabilise
> the audio. I haven't had time to play with debug builds to trace the
> audio segfaults yet.
>
> Steve
>
>
>
> Steven Ellis - Technical Director
> OpenMedia Limited
> email   - steven at openmedia.co.nz
> website - http://www.openmedia.co.nz

The main problem with the audio is that it seems the sse2 version of 
float_to_int16_interleave_sse2 causes the segfault. What I did to fix this was 
to go the end of libavcodec/i386/dsputil_mmx.c change the assignment
c->float_to_int16_interleave = float_to_int16_interleave_sse2;
on line 2864 to
c->float_to_int16_interleave = float_to_int16_interleave_sse;

That fixed the audio for me. YMMV.

Cheers
Paul



More information about the mythtvnz mailing list