RE: Add a library for thumbnail generation based on dtdriver
"Zhao, Halley" <[email protected]>
| Newsgroups | gmane.comp.multimedia.helix.devel |
|---|---|
| Message-ID | <8FED46E8A9CA574792FC7AACAC38FE770287125B93@PDSMSX501.ccr.corp.intel.com> |
Thanks Greg, I will follow it. BR -----Original Message----- From: Gregory Wright [mailto:[email protected]] Sent: 2009年8月19日 22:25 To: Zhao, Halley Cc: '[email protected]' Subject: Re: [Helix-client-dev] Add a library for thumbnail generation based on dtdriver ULONG32 width; ULONG32 height; ULONG32 dataLen; ULONG32 bitsPerPixel; ULONG32 is deprecated, please use UINT32 instead. //BOOL m_bWriteBinary; //BOOL m_bShowProgress; No need to leave in commented code like that, just remove it. Also, BOOL is deprecated, please use HXBOOL. --------------- From the unix.pcf file: --------- # on gcc we want to turn on all warnings extra_cflags = "" using_gcc = 0 if string.find(platform.cc.cmd, 'gcc') != -1: using_gcc = 1 extra_cflags = "-Wall" # grab flags from pkgconfig import shell import string # see if we're using the target gtk version (triggers setting of the # DISABLE_DEPRECATED flag) (exitstatus, gtk_mod_version) = shell.run("pkg-config --modversion gtk +-2.0") ------------------------- Why do we need GTK stuff if this is a non GUI thumbnail generator? Just left over from the old project? It seems this should be made as cross platform as we can and not tied to GTK or Qt or whatever, even on linux. I also don't think it is proper to mess with the GCC flags in there, you could be using a different compiler on differ unix systems. Is that needed? I also see that you have GDK includes in other source files. What are they used for, just image conversion? Is it cross platform? Does it ship with all UNIX systems? Is it a free license? If it is required to use the code then we need to think about SDK entries in the build system and stuff like that...<gdk-pixbuf/gdk- pixbuf.h>. #if ( !defined(_HXSRCIN_H_) || !defined(HELIX_FEATURE_FULLGUID) ) DEFINE_GUID_ENUM(IID_IHXSourceInput, 0xebf8d220, 0x40f7, 0x11d6, 0xab, 0x3f, 0x0, 0x1, 0x2, 0x51, 0xb3, 0x40) DEFINE_GUID_ENUM(IID_IHXSourceHandler, 0xb2646da0, 0x410a, 0x11d6, 0xab, 0x3f, 0x0, 0x1, 0x2, 0x51, 0xb3, 0x40) #endif it is strange to see that in a project's source tree, those should generally be defined in a header file in common/include and then brought into a local guilds.cpp file. Where are you thinking about checking this is at? player/common/ dtdr_service/thumbnail_service? What is the difference between your code and the code that is already there? All changes will need to be checked into 310Atlas and HEAD as well when the CR is done. So, you will need to modify the helix.bif and 310atlas BIF files. --greg. On Aug 17, 2009, at 2:02 AM, Zhao, Halley wrote: > Synopsis: > Add a new library to create thumbnail based on dtdriver; > it could extract thumbnail/metadata from media stream. > > Overview: > There use to be some function in hxclientkit to create thumbnail. > while these function doesn't tight to hxclientkit (only depend > on dtdriver), > and the feature is used not limit to Helix player; for example: > some daemon > for media discover and file browser could use it, etc. > so I try to create this separate library to provide simplified > interface: > bool GetVideoFrame(const char* uri, const char* file, > unsigned int position=0 ); > const char* GetMetaData(const char* uri, > DtdriverMediainfoProcPtr dtdr_mediainfo_callback); > > Files Added: > |-- thumbnail > | |-- LICENSE.txt > | |-- RCSL.txt > | |-- RPSL.txt > | |-- Umakefil > | |-- pub > | | |-- CHXClientThumbnailUnix.h > | | `-- hxthumb.h > | |-- src > | | |-- CHXClientThumbnailUnix.cpp > | | |-- hxthumb.cpp > | | `-- thumbGuids.cpp > | |-- test > | | |-- Umakefil > | | |-- main.cpp > | | `-- unix.pcf > | |-- thumbnail.exp > | `-- unix.pcf > > only hxthumb.cpp and thumbGuids.cpp are newly added source files. > test/main.cpp is a sample to use this library. > > Files Modified: > player/thumbnail/CHXClientThumbnailUnix.cpp > hxclient_3_4_1_atlas.bif > > 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: > <libhxthumb.so> > Distribution library impact and planned action: > add this library to the bundle package of Helix based player > Platforms and Profiles Build Verified: > Set BIF branch -> hxclient_3_4_1_atlas > Set Target(s) -> dtdr_thumb-generator > Set Profile -> helix-client-all-defines > System ID -> linux-2.2-libc6-gcc32-i586 > Branch: > HEAD/hxclient_3_4_1_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: > hxclient_3_4_1_atlas.bif.diff.txt, thumbnail.tgz > ZHAO, Halley (Aihua) > Email: [email protected] > Tel: +86(21)61166476 > iNet: 8821-6476 > SSG/OTC/Moblin 3W038 Pole: F4 > > < > thumbnail.tgz > > > < > hxclient_3_4_1_atlas.bif.diff.txt > >_______________________________________________ > Helix-client-dev mailing list > [email protected] > http://lists.helixcommunity.org/mailman/listinfo/helix-client-dev _______________________________________________ Helix-client-dev mailing list [email protected] http://lists.helixcommunity.org/mailman/listinfo/helix-client-dev