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

List:       helix-datatype-cvs
Subject:    [Datatype-cvs] avi/fileformat avistrm.cpp,1.34,1.35
From:       joeli () helixcommunity ! org
Date:       2010-05-28 3:03:24
Message-ID: 201005280303.o4S33atJ023394 () mailer ! progressive-comp ! com
[Download RAW message or body]

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

Modified Files:
	avistrm.cpp 
Log Message:
Modified by: joeli@real.com
Date: 05/26/2010
Project: RealPlayer for Android Smartphones
Bug Number: 10439
Bug URL: https://bugs.helixcommunity.org/show_bug.cgi?id=10439

Synopsis: Fix for Bug 10439 the mp4v encoded file can not be played

Overview:

Before we Initialized Renderers according to the Media MimeType, we checked the \
header of content by GetHeader(IHXValues* pHeader) to set the correct MimeType. \
Currently in the function AVI fileformat GetHeader (), m_header.ulHandler deal with \
the follow handlers:

#define  VIDEO_FORMAT_H263 HX_MAKE4CC('3', '6', '2', 'H')
#define  VIDEO_FORMAT_divx  HX_MAKE4CC('x', 'v', 'i', 'd')
#define  VIDEO_FORMAT_DIVX HX_MAKE4CC('X', 'V', 'I', 'D')
#define  VIDEO_FORMAT_DX50 HX_MAKE4CC('0', '5', 'X', 'D')
#define  VIDEO_FORMAT_dx50 HX_MAKE4CC('0', '5', 'x', 'd')
#define  VIDEO_FORMAT_XVID HX_MAKE4CC('D', 'I', 'V', 'X')
#define  VIDEO_FORMAT_xvid HX_MAKE4CC('d', 'i', 'v', 'x')
#define  VIDEO_FORMAT_H264 HX_MAKE4CC('4', '6', '2', 'H')
#define  VIDEO_FORMAT_h264 HX_MAKE4CC('4', '6', '2', 'h')
#define  VIDEO_FORMAT_AVC1 HX_MAKE4CC('1', 'C', 'V', 'A')
#define  VIDEO_FORMAT_avc1 HX_MAKE4CC('1', 'c', 'v', 'a')
#define  VIDEO_FORMAT_FMP4 HX_MAKE4CC('4', 'P', 'M', 'F')
#define  VIDEO_FORMAT_fmp4 HX_MAKE4CC('4', 'p', 'm', 'f')

And the current mp4v content use mp4v ulHandler.
So we add the follow define:
#define  VIDEO_FORMAT_MP4V   HX_MAKE4CC('V', '4', 'P', 'M')
#define  VIDEO_FORMAT_mp4v  HX_MAKE4CC('v', '4', 'p', 'm')

Then we can set correct szStreamName and szMimeType, otherwise we will use  ¡ °An AVI \
stream ¡ ± and  ¡ °video/x-pn-icm-plugin ¡ ± as it ¡ ¯s szStreamName and szMimeType, \
which is exactly what we want.



 Files Added: None
 Files Modified:
 datatype\avi\fileformat/avistrm.cpp
 Image Size and Heap Use impact (Client -Only):
 None

Platforms and Profiles Affected:
Platform: android-donut3230-arm-qsd_8x50
Profile: helix-client-android-full

Distribution Libraries Affected:
None

Distribution library impact and planned action:
None

Platforms and Profiles Build Verified:
Platform: android-donut3230-arm-qsd_8x50
Profile: helix-client-android-full

Platforms and Profiles Functionality verified:
Platform: android-donut3230-arm-qsd_8x50
Profile: helix-client-android-full
Branch: hxclient_3_6_1_atlas

Copyright assignment: I am a RealNetworks employee



Index: avistrm.cpp
===================================================================
RCS file: /cvsroot/datatype/avi/fileformat/avistrm.cpp,v
retrieving revision 1.34
retrieving revision 1.35
diff -u -d -r1.34 -r1.35
--- avistrm.cpp	26 May 2010 15:47:50 -0000	1.34
+++ avistrm.cpp	28 May 2010 03:03:22 -0000	1.35
@@ -271,6 +271,8 @@
 #define  VIDEO_FORMAT_h264 HX_MAKE4CC('4', '6', '2', 'h')  
 #define  VIDEO_FORMAT_AVC1 HX_MAKE4CC('1', 'C', 'V', 'A') 
 #define  VIDEO_FORMAT_avc1 HX_MAKE4CC('1', 'c', 'v', 'a') 
+#define  VIDEO_FORMAT_MP4V HX_MAKE4CC('V', '4', 'P', 'M') 
+#define  VIDEO_FORMAT_mp4v HX_MAKE4CC('v', '4', 'p', 'm') 
 
 
 #define AVI_LIST_OBJECT     0x4c495354 /* 'LIST' */
@@ -847,6 +849,11 @@
                             strcpy(szStreamName, "Video Track");
                             strcpy(szMimeType, "video/H261");
                         }
+                        else if((m_header.ulHandler == VIDEO_FORMAT_MP4V) || \
(m_header.ulHandler == VIDEO_FORMAT_mp4v)) +                        {
+                            strcpy(szStreamName, "Video Track");
+                            strcpy (szMimeType, "video/X-HX-DIVX");
+                        }
                         else
                         {
                             strcpy(szStreamName, "An AVI stream");


_______________________________________________
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