[mythtv] Updated patch for directshow filters with MythTV (for CoreAVC)
andrew.lyon at gmail.com
Wed Feb 7 23:51:42 UTC 2007
On 2/7/07, Alan Nisota <alannisota at gmail.com> wrote:
> Mark Kendall wrote:
> > On 2/7/07, Alan Nisota <alannisota at gmail.com> wrote:
> >> Andrew Lyon wrote:
> >>> Its working, colours are a bit off but its playing back in realtime!,
> >>> I'm going to upgrade my kernel and nvidia drivers and do more testing,
> >>> ive been meaning to bring them up to date anyway..
> >> The color issue may be due to the output format we're using. I am using
> >> I420 because that is what Myth wants, but it may be that YV12 works
> >> better. If I can get a sample that shows the problem in myth, I can
> >> test it in mplayer and see if I can figure out what needs to be done.
> >> Also, I now have multiple CPUs almost working, and it gives a huge
> >> speedup. The only problem is that I get a segfault at the end of
> >> playback (inside the codec). Once I get that worked out, I'll update
> >> the patch with the fixes that have come up so far.
> > Alan
> > The problem is in avformatdecoder
> > + bih.biCompression = 0x34363268; //0x30323449;
> > If I revert to the commented out (I420) fourcc, colourspace is as expected.
> This won't do what you expected. biCompression is the input format, and
> I have it hardcoded to 'h264' at the moment (which is what CoreAVC
> wants). We are actually interested in the output format, which is set
> just below at:
> however, it is not just a simple matter of changing that to YV12, as we
> need to convince myth what the format is too. If this is the problem,
> I'll work out how to make it work, but it is much easier to test with
> mplayer where I can easily play with different modes.
> I have updated the patch on ticket #3053 so it now includes the fixes
> mentioned in this thread along with multiple CPU support.
> mythtv-dev mailing list
> mythtv-dev at mythtv.org
I get a compile error with 1.1, applied to clean source 12672 which is
the same version I used before, heres the log including a few lines
before the error:
g++ -c -pipe -march=pentium-m -Wall -W -O3 -fomit-frame-pointer -Wall
-Wno-switch -Wno-non-virtual-dtor -fomit-fram
eetype2 -D_REENTRANT -DPIC -fPIC -DMMX -Di386 -D_GNU_SOURCE
-D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr\" -DLIBDIR=\"/u
E -DUSING_OSS -DUSING_H264TOOLS -DUSING_XV -DUSING_XVMC -DUSING_XVMCW
-DUSING_XVMC_VLD -DUSING_OPENGL -DUSING_OPENG
USING_V4L -DUSING_IPTV -DUSING_IVTV -DUSING_DVB -DUSING_BACKEND
-DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_
mkspecs/linux-g++ -I. -I/usr/include -I/usr/include -I/usr/include
-I../.. -I.. -I../libmyth -I../libavcodec -I../l
-Idvbdev -Impeg -Iiptv
-I/usr/qt/3/include -I/usr/include -I/usr/include -o mo
make: *** No rule to make target `../libdshowloader/libloader.a',
needed by `libmythtv-0.20.so.0.20.0'. Stop.
make: Leaving directory `/var/tmp/mythtv-0.20/libs/libmythtv'
make: *** [sub-libmythtv] Error 2
make: Leaving directory `/var/tmp/mythtv-0.20/libs'
make: *** [sub-libs] Error 2
I can cd to libdshowloader, make, and then the myth compile is
successful, but myth immediately segfaults if I try to play h264:
More information about the mythtv-dev