[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-datatype-cvs
Subject: [Datatype-cvs] mp4/filewriter mp4sm.cpp,1.32.2.7,1.32.2.8
From: yuxinliu () helixcommunity ! org
Date: 2013-10-23 2:47:25
[Download RAW message or body]
Update of /cvsroot/datatype/mp4/filewriter
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv8774
Modified Files:
Tag: PRODUCER_14_0_RN
mp4sm.cpp
Log Message:
Synopsis
========
This CR Fix Bug HLXPROD-123 HMP produces 3gs6 files, when setup to create mp4 files.
Branch : PRODUCER_14_0_RN
Reviewed by Gang
Repro Steps:
When HMP is set up with a job to create mp4 files, once encoding is completed, the \
file will have an .mp4 file extension. However if you analyze or interrogate the file \
with a media analyzer such as mediainfo, the file will actually display as 3gs6.
Root Cause:
If EnableHintTracks is true, HMP will set ftype to 3gs6 for both of MP4 and 3GP file.
If EnableProgressiveDownload is true, HMP will set ftype to 3gr6 for both of MP4 and \
3GP file.
My fix:
For mp4 file, HMP will not change ftype to 3gs6 or 3gr6 when EnableHintTracks or \
EnableProgressiveDownload is true.
Files affected:
=========
datatype/mp4/filewriter/mp4sm.cpp
Testing Performed:
================
Unit Tests: None
Leak Tests: None
Performance Tests: N/A
Platforms Tested: win32-i386-vc9
Builds Verified: win32-i386-vc9
QA Hints
==========
None
Index: mp4sm.cpp
===================================================================
RCS file: /cvsroot/datatype/mp4/filewriter/mp4sm.cpp,v
retrieving revision 1.32.2.7
retrieving revision 1.32.2.8
diff -u -d -r1.32.2.7 -r1.32.2.8
--- mp4sm.cpp 25 Apr 2011 20:32:44 -0000 1.32.2.7
+++ mp4sm.cpp 23 Oct 2013 02:47:20 -0000 1.32.2.8
@@ -1815,6 +1815,7 @@
{
m_pRootAtom->AddChild( pFtyp );
retVal = HXR_OK;
+ HXBOOL bIsMP4 = TRUE;
//try to guess file branding info by file extension
@@ -1837,6 +1838,7 @@
pFtyp->SetCompatibleBrands("3gp73gp6isom");
m_eMetaFlavor = META_3GPP;
+ bIsMP4 = FALSE;
}
else
if (stricmp(fileExt, ".3g2") == 0)
@@ -1847,6 +1849,7 @@
pFtyp->SetMinorVersion(0);
m_eMetaFlavor = META_3GPP;
+ bIsMP4 = FALSE;
}
#if defined(HELIX_FEATURE_RMFF_ISO_BASED)
else
@@ -1856,6 +1859,7 @@
pFtyp->SetCompatibleBrands(HX_RMNG_COMPATIBLE_BRANDS);
pFtyp->SetMinorVersion(0);
m_eMetaFlavor = META_RMNG;
+ bIsMP4 = FALSE;
}
#endif
else
@@ -1873,45 +1877,49 @@
// When in proper 3GPP-mode, only include rel6/rel5 definitions.
// Note that we don't even check that everything is conformant,
// just adjust those things we can affect.
- switch (m_e3gpMode)
+ if(!bIsMP4)
{
- case M3GPP_GENERAL:
- pFtyp->SetMajorBrand("3gg6");
- pFtyp->SetMinorVersion(0);
- pFtyp->SetCompatibleBrands("3gg63gp6isom");
- m_eMetaFlavor = META_3GPP;
- break;
- case M3GPP_BASIC:
- pFtyp->SetMajorBrand("3gp6");
- pFtyp->SetMinorVersion(0);
- pFtyp->SetCompatibleBrands("3gp63gp5isom");
- m_eMetaFlavor = META_3GPP;
- break;
- case M3GPP_STREAMING:
- pFtyp->SetMajorBrand("3gs6");
- pFtyp->SetMinorVersion(0);
- pFtyp->SetCompatibleBrands("3gs63gg63gp5isom");
- m_eMetaFlavor = META_3GPP;
- break;
- case M3GPP_PROGDL:
- pFtyp->SetMajorBrand("3gr6");
- pFtyp->SetMinorVersion(0);
- pFtyp->SetCompatibleBrands("3gr63gp63gg63gp5isom");
- m_eMetaFlavor = META_3GPP;
- break;
- case M3GPP_STREAMDL:
- pFtyp->SetMajorBrand("3gs6");
- pFtyp->SetMinorVersion(0);
- pFtyp->SetCompatibleBrands("3gs63gr63gg63gp5isom");
- m_eMetaFlavor = META_3GPP;
- break;
- case M3GPP_REL5:
- pFtyp->SetMajorBrand("3gp5");
- pFtyp->SetMinorVersion(0);
- pFtyp->SetCompatibleBrands("3gp53gp4isom");
- m_eMetaFlavor = META_3GPP;
- break;
+ switch (m_e3gpMode)
+ {
+ case M3GPP_GENERAL:
+ pFtyp->SetMajorBrand("3gg6");
+ pFtyp->SetMinorVersion(0);
+ pFtyp->SetCompatibleBrands("3gg63gp6isom");
+ m_eMetaFlavor = META_3GPP;
+ break;
+ case M3GPP_BASIC:
+ pFtyp->SetMajorBrand("3gp6");
+ pFtyp->SetMinorVersion(0);
+ pFtyp->SetCompatibleBrands("3gp63gp5isom");
+ m_eMetaFlavor = META_3GPP;
+ break;
+ case M3GPP_STREAMING:
+ pFtyp->SetMajorBrand("3gs6");
+ pFtyp->SetMinorVersion(0);
+ pFtyp->SetCompatibleBrands("3gs63gg63gp5isom");
+ m_eMetaFlavor = META_3GPP;
+ break;
+ case M3GPP_PROGDL:
+ pFtyp->SetMajorBrand("3gr6");
+ pFtyp->SetMinorVersion(0);
+ pFtyp->SetCompatibleBrands("3gr63gp63gg63gp5isom");
+ m_eMetaFlavor = META_3GPP;
+ break;
+ case M3GPP_STREAMDL:
+ pFtyp->SetMajorBrand("3gs6");
+ pFtyp->SetMinorVersion(0);
+ pFtyp->SetCompatibleBrands("3gs63gr63gg63gp5isom");
+ m_eMetaFlavor = META_3GPP;
+ break;
+ case M3GPP_REL5:
+ pFtyp->SetMajorBrand("3gp5");
+ pFtyp->SetMinorVersion(0);
+ pFtyp->SetCompatibleBrands("3gp53gp4isom");
+ m_eMetaFlavor = META_3GPP;
+ break;
+ }
}
+
}
if (m_strOutputType.CompareNoCase("isma2")==0 ||
_______________________________________________
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