vlc | branch: master | Martin Storsjö <[email protected]> | Mon Dec 19 17:02:59 2011 +0200| [6d71b5c008e15f1718b8966b094f3701714c0f6a] | committer: Jean-Baptiste Kempf
omxil: Ignore nSliceHeight on Galaxy S II Signed-off-by: Jean-Baptiste Kempf <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6d71b5c008e15f1718b8966b094f3701714c0f6a --- modules/codec/omxil/omxil.c | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-) diff --git a/modules/codec/omxil/omxil.c b/modules/codec/omxil/omxil.c index dde8126..d12d09c 100644 --- a/modules/codec/omxil/omxil.c +++ b/modules/codec/omxil/omxil.c @@ -445,6 +445,18 @@ static OMX_ERRORTYPE GetPortDefinition(decoder_t *p_dec, OmxPort *p_port, strlen("OMX.qcom.video.decoder"))) def->format.video.eColorFormat = OMX_QCOM_COLOR_FormatYVU420SemiPlanar; + /* Hack: Galaxy S II (stock firmware) gives a slice height larger + * than the video height, but this doesn't imply padding between + * the video planes. Nexus S also has a slice height larger than + * the video height, but there it actually is real padding, thus + * Galaxy S II is the buggy one. The Galaxy S II decoder is + * named OMX.SEC.avcdec while the one on Nexus S is + * OMX.SEC.AVC.Decoder. Thus do this for any OMX.SEC. that don't + * contain the string ".Decoder". */ + if(!strncmp(p_sys->psz_component, "OMX.SEC.", strlen("OMX.SEC.")) && + !strstr(p_sys->psz_component, ".Decoder")) + def->format.video.nSliceHeight = 0; + if(!GetVlcVideoFormat( def->format.video.eCompressionFormat, &p_fmt->i_codec, 0 ) ) { _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
