[vlc-devel] Crystal HD for 1080i MPEG2 and closed captions on low-end system

Patrick Jackson pejackson at gmail.com
Wed Jun 8 00:15:05 CEST 2011


I'm using VLC on a low-end system (Atom D525 with Intel GMA 3150 graphics)
running Linux.

I would like to play 1080i MPEG2 with deinterlacing and closed-captions. It
seems my CPU can keep up if I use software decoding and software
deinterlacing (blend), but when I turn on closed-captions I start losing
video frames at a rate that is very noticeable.

To try and work-around this, I stuck a Crystal HD (BCM70015 version)
mini-PCIe decoder in the system and built the latest VLC 1.2 trunk code. I'm
also using Jarod Wilson's crystalhd driver and libs, built from the latest
trunk source. It seems to be using the card fine and drops the CPU use down,
as expected.

[0x83b6554] crystalhd decoder: Opened CrystalHD hardware with success
[0x83b6554] main decoder debug: using decoder module "crystalhd"

Unfortunately, neither deinterlacing nor closed-captions work for me when
the crystal codec is in use. The video definitely looks interlaced, and this
shows up on the console:

[0xadb07c9c] main video output debug: Adding 'deinterlace' as static
[0x8af6ec4] main filter debug: looking for video filter2 module: 1 candidate
[0x8987904] main input debug: Buffering 34%
[0x8987904] main input debug: Buffering 34%
[0x8af6ec4] main filter debug: no video filter2 module matching
"deinterlace" could be loaded
[0x8af6ec4] main filter debug: TIMER module_need() : 1.522 ms - Total 1.522
ms / 1 intvls (Avg 1.522 ms)
[0xadb07c9c] main video output error: Failed to create video filter2
[0xadb07c9c] main video output error: Failed to add filter 'deinterlace'

And when I turn on closed-captions, the video stutters with captions
showing, but then it stops. This is output on the console:

[0xa8e285e4] main decoder debug: looking for decoder module: 32 candidates
[0xa8e285e4] main decoder debug: using decoder module "cc"
[0xa8e285e4] main decoder debug: TIMER module_need() : 36.672 ms - Total
36.672 ms / 1 intvls (Avg 36.672 ms)
[0xad907e54] main video output warning: picture is too late to be displayed
(missing 35 ms)
[0xad907e54] main video output debug: picture might be displayed late
(missing 3 ms)
[0x865f904] main vout display debug: auto hiding mouse
[0xad907e54] main video output warning: picture is too late to be displayed
(missing 252 ms)
[0xad907e54] main video output warning: picture is too late to be displayed
(missing 218 ms)
[0xad907e54] main video output warning: picture is too late to be displayed
(missing 186 ms)
<repeated a bunch>

I know Crystal HD support is fairly new, but should software deinterlacing
and closed caption display work with Crystal HD decoding in theory? If so,
any pointers on debugging these problems?

A broader question is: is there a better way to get this to run well on my
system (with or without the Crystal HD)?

I only need to display 720p (from the 1080i source). My current plan is to:

1) Come up with a configuration that plays 1080i MPEG2, deinterlaced, with
closed captions without the Crystal HD.

For example, I've seen claims that the Intel GMA 3150 does full MPEG2
decoding in hardware, but I haven't figured out if it's possible to take
advantage of this in VLC. Any pointers on this, or other options, would be
greatly appreciated.

 - or-

2) Decode, deinterlace, and downscale in the Crystal HD and add closed
captions in software.

Researching this choice, I've found and successfully gotten downscaling to
work as described in this post:


There's some talk of turning deinterlacing on in the Crystal HD in posts,
and even some test code in the following post, but I haven't found a claim
that someone has it working. Anyone know differently?


By the way, thanks to everyone for all the work and good discussions. It has
help a lot. Special thanks to R.M. for posting his research on the same

I'd really appreciate any help.

Thanks very much,

- Patrick
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20110607/0f0edba1/attachment.html>

More information about the vlc-devel mailing list