[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-datatype-cvs
Subject:    [Datatype-cvs] avi/fileformat/pub avistrm.h,1.10.4.6,1.10.4.7
From:       anturune () helixcommunity ! org
Date:       2012-05-30 13:42:10
[Download RAW message or body]

Update of /cvsroot/datatype/avi/fileformat/pub
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv26675

Modified Files:
      Tag: hxclient_4_2_0_brizo
	avistrm.h 
Log Message:
Modified by: rachit.gupta@sasken.com 

Reviewed by: ext-dongsung.kim@nokia.com
             ext-girish.shetty@nokia.com

Date: 05/21/2012

Project: SymbianMmf_wm 

Synopsis: Select 1080p avi file plays with corruption on hyperion

Overview: AVI parser can not handle zero sized chunk very well now, because in \
current logic, when meet zero sized chunk, parser will continue to find next chunk \
without remember where is the next non-zero sized chunk. So after find out non-zero \
sized chunk, parser will continue to begin find at the next chunk which is zero \
sized. For example, a chunk size series like this "0 - 0 - 355", will be parsed as \
"355 - 355 - 355", and copy the 355 bytes from the third chunk into every buffer. \
This is not correct. Previous fix is not correct too, because skip in index table \
scanning process simply is not enough, which will cause AV async sometimes, and will \
incur additional logic for correct duration calc. This fix is add a counter for zero \
sized chunk after every seek. And add this value to related variable when calculating \
packet time and access actual chunk. Some careful UT have been taken to avoid bad \
impact.

Fix: This fix is being merged from 365 Atlas. Fix given by Kilu.

Files modified & changes:

datatype/avi/fileformat/avistrm.cpp
datatype/avi/fileformat/pub/avistrm.h


Image Size and Heap Use impact: No impact

Module Release testing (STIF) : Done.

Test case(s) Added : No

Memory leak check performed : N/A

Platforms and Profiles Functionality verified: armv5 

MCL Branch: 420 brizo

Diff: Attached

Index: avistrm.h
===================================================================
RCS file: /cvsroot/datatype/avi/fileformat/pub/avistrm.h,v
retrieving revision 1.10.4.6
retrieving revision 1.10.4.7
diff -u -d -r1.10.4.6 -r1.10.4.7
--- avistrm.h	22 Apr 2011 00:15:25 -0000	1.10.4.6
+++ avistrm.h	30 May 2012 13:41:22 -0000	1.10.4.7
@@ -409,6 +409,7 @@
 
     UINT32 m_ulMinReadChunk;
     UINT32 m_ulMaxReadChunk;        // exclusive
+    UINT32 m_ulZeroSizeChunkCount;    // Counter of zero sized chunk
     UINT32 m_ulChunkReadTarget;     // The target of current file operations
 
     BOOL   m_bRead;                 // All data (chunks) read.  Reset on seek.


_______________________________________________
Datatype-cvs mailing list
Datatype-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/datatype-cvs


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic