RE: Get abstrct information of media stream throughdtdriver (hxclientkit)
"Zhao, Halley" <[email protected]>
| Newsgroups | gmane.comp.multimedia.helix.devel |
|---|---|
| Message-ID | <094BCE01AFBE9646AF220B0B3F367AAB031501B2@pdsmsx413.ccr.corp.intel.com> |
Agree, and with 2 following-up questions: 1. for headerOnly, I will just use 3 options: DECODEAUDIO_OPTION_NAME, DECODEVIDEO_OPTION_NAME, PROCESSHEADERS_OPTION_NAME. Is it correct? 2. for some common properties in both audio and video, ( I think there may be even more than one audio/video stream). So I'd like add integer variables in class CSourceInput, for example: m_VideoIndex, m_AudioIndex. The variables will be reset to 0 in OnFileHeader(), and increase respectively (for audio or video) in OnStreamHeader(). And we will combine this 'stream index' with the properties name, for example: "video0:width, 320", or "audio1:AvgBitRate:32000" >-----Original Message----- >From: Eric Hyche [mailto:[email protected]] >Sent: 2008年5月19日 23:49 >To: Zhao, Halley; [email protected] >Cc: Lynch, Rusty >Subject: RE: [Helix-client-dev] Get abstrct information of media stream >throughdtdriver (hxclientkit) > > >Halley, > >My comments: > >@@ -190,7 +222,11 @@ > // pOptions->SetPropertyULONG32("StartTime", 10); > pOptions->SetPropertyULONG32("StartTime", startTime); > pOptions->SetPropertyULONG32(DECODE_OPTION_NAME, 1); >- //pOptions->SetPropertyULONG32("VideoThumbnail", 1); >+ if(headerOnly) >+ { >+ pOptions->SetPropertyULONG32(DECODEAUDIO_OPTION_NAME, 1); >+ pOptions->SetPropertyULONG32("ProcessHeadersOnly", 1); >+ } > >If you are setting "ProcessHeadersOnly", then you should NOT be >setting any of the other decode-related options. The reason is that >if you are decoding, then some of the file header properties are not >provided, and also that the stream header properties are different >when decoding. > >@@ -650,18 +782,22 @@ > //printf ("CSourceInput::OnStreamHeader\n"); > IHXBuffer* pMime = NULL; > pValues->GetPropertyCString("MimeType", pMime); >- //printf("Stream MimeType: %s\n", pMime->GetBuffer()); >+ if( '\0' == g_sMimeType[0]) >+ { >+ strcat( g_sMimeType, pMime->GetBuffer() ); >+ } >+ else >+ { >+ strcat(g_sMimeType, ":"); >+ strcat( g_sMimeType, pMime->GetBuffer() ); >+ } > >This runs the risk of buffer overrun since g_sMimeType is a fixed-length >buffer of length 256. You should use SafeSprintf or SafeStrCat >defined in common/runtime/pub/safestring.h instead. > >@@ -80,13 +80,16 @@ > IHXDataTypeDriverResponse* m_pDTDResponse; > IHXSourceInput* m_pSourceInput; > >+ bool m_bHeaderOnly ; > >We should use HX_BOOL here instead. > > >-/* >- UINT32 ulChan = 0; >- pValues->GetPropertyULONG32("Channels", ulChan); >- if (ulChan == 2) >+ if( NULL != pValues) > { >- printf("Stereo\n"); >+ DumpMediaInfo(pValues); > } >-*/ >- //UINT32 ulSamplsPerSec = 0; >+ > >This looks like you are passing both stream headers into DumpMediaInfo(). >Both audio and video headers will have several properties in common, such >as "AvgBitRate". How will you distinguish between the "AvgBitRate" of >a video stream and an "AvgBitRate" of an audio stream? > >Rest looks good. > >Eric >============================================= >Eric Hyche ([email protected]) >Technical Lead >RealNetworks, Inc. > >> -----Original Message----- >> From: Zhao, Halley [mailto:[email protected]] >> Sent: Tuesday, May 13, 2008 8:24 PM >> To: [email protected]; [email protected] >> Cc: Lynch, Rusty >> Subject: RE: [Helix-client-dev] Get abstrct information of >> media stream throughdtdriver (hxclientkit) >> >> Sorry for mistake. >> >> Attach the patch file. >> >> >> >-----Original Message----- >> >From: Eric Hyche [mailto:[email protected]] >> >Sent: 2008年5月13日 23:45 >> >To: Zhao, Halley; [email protected] >> >Cc: Lynch, Rusty >> >Subject: RE: [Helix-client-dev] Get abstrct information of >> media stream >> >throughdtdriver (hxclientkit) >> > >> > >> >> Files Attached: >> >> >> >> hxclientkit-mediaAbstractInfo.diff.txt >> >> >> > >> >I didn't see any such file attached to the >> >CR email. >> > >> >Eric >> > >> >============================================= >> >Eric Hyche ([email protected]) >> >Technical Lead >> >RealNetworks, Inc. >> > >> >> -----Original Message----- >> >> From: [email protected] >> >> [mailto:[email protected]] On >> >> Behalf Of Zhao, Halley >> >> Sent: Tuesday, May 13, 2008 5:56 AM >> >> To: [email protected] >> >> Cc: Lynch, Rusty >> >> Subject: [Helix-client-dev] Get abstrct information of media >> >> stream throughdtdriver (hxclientkit) >> >> >> >> Synopsis: >> >> >> >> Get abstrct information of media stream through dtdriver >> >> >> >> Overview: >> >> >> >> use dtdriver plugin to parse a media stream's file/stream >> >> header to get some information, >> >> >> >> for example: Title, width, hegith, Copyright, etc. >> >> >> >> >> >> >> >> Files Added: >> >> >> >> No file added >> >> >> >> Files Modified: >> >> >> >> player/hxclientkit/pub/HXClientCFuncs.h >> >> >> >> player/hxclientkit/pub/HXClientCallbacks.h >> >> >> >> >player/hxclientkit/src/platform/unix/CHXClientThumbnailUnix.h >> >> >> >> function and variables declaration >> >> >> >> >> >> >> >> >> player/hxclientkit/src/platform/unix/CHXClientThumbnailUnix.cpp >> >> >> >> function implementation >> >> >> >> >> >> >> >> >> >> >> >> Image Size and Heap Use impact (Client -Only): >> >> >> >> little >> >> >> >> Platforms and Profiles Affected: >> >> >> >> platform: linux-2.2-libc6-gcc32-i586 >> >> >> >> profile: helix-client-all-defines >> >> >> >> >> >> >> >> Distribution Libraries Affected: >> >> >> >> <libhxclient.a> >> >> >> >> Distribution library impact and planned action: >> >> >> >> <None> >> >> >> >> Platforms and Profiles Build Verified: >> >> >> >> Set BIF branch -> hxdbus_3_1_0_atlas >> >> >> >> Set Target(s) -> dbus_server_with_video >> >> >> >> Set Profile -> helix-client-all-defines >> >> >> >> System ID -> linux-2.2-libc6-gcc32-i586 >> >> >> >> Branch: >> >> >> >> HEAD, hxclient_3_1_0_atlas >> >> >> >> Copyright assignment: <MUST be one of the following statements > >> >> >> >> 2. Intel has signed and delivered a Joint >> Copyright Assignment >> >> >> >> to RealNetworks, and received acknowledgment that the >> >> >> >> agreement was received. >> >> >> >> Files Attached: >> >> >> >> hxclientkit-mediaAbstractInfo.diff.txt >> >> >> >> >> >> >> >> ZHAO, Halley (Aihua) >> >> >> >> Email: [email protected] <mailto:[email protected]> >> >> >> >> Tel: +86(21)61166476 >> >> >> >> iNet: 8821-6476 >> >> >> >> SSG/OTC/UMD >> >> >> >> >> >> >> >> >> >> _______________________________________________ Helix-client-dev mailing list [email protected] http://lists.helixcommunity.org/mailman/listinfo/helix-client-dev