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

List:       helix-datatype-cvs
Subject:    [Datatype-cvs] mp4/video/renderer mp4vdec.cpp,1.9,1.10
From:       jrathore () helixcommunity ! org
Date:       2008-12-24 1:07:09
Message-ID: 200812240108.mBO18nIk010817 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/datatype/mp4/video/renderer
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv5615

Modified Files:
	mp4vdec.cpp 
Log Message:
Modified by: jrathore@real.com

Date: 12/18/08

Project: Helix DNA Client

 

Synopsis: Adding support for H.264 in AVI file format

 

Overview: This change enables playback of H.264 video inside an AVI file. There is no \
AVC Decoder Configuration Record found in such type of files and the Sequence \
Parameter Set (SPS) and Picture Parameter Set (PPS) are within the frames. However \
this means that we do not have the NALUSizeField available and we have to compute the \
appropriate number of bytes for decoding differently.

 

Files Added: None

 

Files Modified:

avistrm.cpp (/datatype/avi/fileformat/avistrm.cpp)

avcconfig.cpp (/datatype/mp4/common/avcconfig.cpp)

avcconfig.h (/datatype/mp4/common/pub/avcconfig.h)

mp4vpyld.cpp (/datatype/mp4/payload/mp4vpyld.cpp)

mp4vdec.cpp (/datatype/mp4/video/renderer/mp4vdec.cpp)

avc1dstm.cpp (datatype-restricted/h264/codec/decoder/frontend/avc1dstm.cpp)

avc1dstm.h (datatype-restricted/h264/codec/decoder/frontend/pub/avc1dstm.h)

 

Image Size and Heap Use impact (Client -Only): None

 

Platforms and Profiles Affected:

Platform: win32-i386-vc7

Profile: helix-client-all-defines

 

Platforms and Profiles Build and Functionality Verified:

Platform: win32-i386-vc7

Profile: helix-client-all-defines

target(s): splay

 

Branch: hxclient_3_1_0_atlas, HEAD

 

Copyright assignment: I am a RealNetworks employee.

 

Files Attached: avc-in-avi.diff

-


Index: mp4vdec.cpp
===================================================================
RCS file: /cvsroot/datatype/mp4/video/renderer/mp4vdec.cpp,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- mp4vdec.cpp	4 Sep 2007 15:20:01 -0000	1.9
+++ mp4vdec.cpp	24 Dec 2008 01:07:07 -0000	1.10
@@ -432,9 +432,17 @@
 	pMofIn->moftag = HX_MEDIA_NATIVE;
 	pMofIn->submoftag = STRINGTOMOFTAG(m_pCodecId);
 
-	memcpy(pMofIn->data,
-	       m_pVideoFormat->GetBitstreamHeader(),
-	       m_pVideoFormat->GetBitstreamHeaderSize());
+        if ((m_pVideoFormat->GetBitstreamHeaderSize() > 0)&& 
+             (m_pVideoFormat->GetBitstreamHeader()))
+        {
+	    memcpy(pMofIn->data,
+	        m_pVideoFormat->GetBitstreamHeader(),
+	        m_pVideoFormat->GetBitstreamHeaderSize());
+        }
+        else
+        {
+            pMofIn->cbLength = 0;
+        }
     }
 
     if (SUCCEEDED(retVal))


_______________________________________________
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