BlinkenArea - GitList
Repositories
Blog
Wiki
BlinkenLib
Code
Commits
Branches
Tags
Search
Tree:
520d37f
Branches
Tags
master
v0.1
v0.2
v0.3
v0.3.1
v0.4
v0.4.1
v0.5
v0.5.1
v0.5.2
v0.5.3
v0.5.4
v0.5.5
v0.6.0
v0.6.1
v0.6.2
v0.6.3
v0.6.4
v0.6.5
v0.6.6
v0.6.7
v0.6.8
v0.6.9
v0.7.0
v0.7.1
v0.7.10
v0.7.2
v0.7.3
v0.7.4
v0.7.5
v0.7.6
v0.7.7
v0.7.8
v0.7.9
v0.8.0
v0.8.1
BlinkenLib
BlinkenLib
BlinkenMovie.h
implemented rotationg and mirroring movies
Stefan Schuermans
commited
520d37f
at 2013-08-02 23:04:38
BlinkenMovie.h
Blame
History
Raw
/* BlinkenLib Copyright 2004-2011 Stefan Schuermans <stefan@blinkenarea.org> Copyleft GNU public license - http://www.gnu.org/copyleft/gpl.html a blinkenarea.org project */ #ifndef INC_BlinkenLib_BlinkenMovie #define INC_BlinkenLib_BlinkenMovie #include <BlinkenLib/config.h> #include <BlinkenLib/BlinkenFrame.h> #ifdef WIN32 #include <winsock2.h> #else #define SOCKET int #define INVALID_SOCKET -1 #endif #ifdef __cplusplus extern "C" { #endif typedef struct sBlinkenMovie stBlinkenMovie; stBlinkenMovie *BlinkenMovieNew(int height, int width, int channels, int maxval); stBlinkenMovie *BlinkenMovieClone(stBlinkenMovie *pSrcMovie); void BlinkenMovieFree(stBlinkenMovie *pMovie); int BlinkenMovieGetHeight(stBlinkenMovie *pMovie); int BlinkenMovieGetWidth(stBlinkenMovie *pMovie); int BlinkenMovieGetChannels(stBlinkenMovie *pMovie); int BlinkenMovieGetMaxval(stBlinkenMovie *pMovie); int BlinkenMovieGetDuration(stBlinkenMovie *pMovie); int BlinkenMovieGetInfoCnt(stBlinkenMovie *pMovie); char *BlinkenMovieGetInfoType(stBlinkenMovie *pMovie, int infoNo); char *BlinkenMovieGetInfoData(stBlinkenMovie *pMovie, int infoNo); void BlinkenMovieSetInfo(stBlinkenMovie *pMovie, int infoNo, const char *pInfoType, const char *pInfoData); void BlinkenMovieInsertInfo(stBlinkenMovie *pMovie, int infoNo, const char *pInfoType, const char *pInfoData); void BlinkenMovieAppendInfo(stBlinkenMovie *pMovie, const char *pInfoType, const char *pInfoData); void BlinkenMovieDeleteInfo(stBlinkenMovie *pMovie, int infoNo); void BlinkenMovieDeleteInfos(stBlinkenMovie *pMovie); int BlinkenMovieGetFrameCnt(stBlinkenMovie *pMovie); stBlinkenFrame *BlinkenMovieGetFrame(stBlinkenMovie *pMovie, int frameNo); void BlinkenMovieSetFrame(stBlinkenMovie *pMovie, int frameNo, stBlinkenFrame *pFrame); int BlinkenMovieInsertFrame(stBlinkenMovie *pMovie, int frameNo, stBlinkenFrame *pFrame); int BlinkenMovieAppendFrame(stBlinkenMovie *pMovie, stBlinkenFrame *pFrame); void BlinkenMovieDeleteFrame(stBlinkenMovie *pMovie, int frameNo); void BlinkenMovieDeleteFrames(stBlinkenMovie *pMovie); int BlinkenMovieConcat(stBlinkenMovie *pMovie, stBlinkenMovie *pMovie2 /* appended and freed */); void BlinkenMovieReverse(stBlinkenMovie *pMovie); void BlinkenMovieResize(stBlinkenMovie *pMovie, int height, int width, int channels, int maxval); void BlinkenMovieScale(stBlinkenMovie *pMovie, int height, int width); void BlinkenMovieColorize(stBlinkenMovie *pMovie, int channels, int mode); void BlinkenMovieCopyRect(stBlinkenMovie *pDest, int destY, int destX, stBlinkenMovie *pSrc, int srcY, int srcX, int height, int width); void BlinkenMovieRotateCw(stBlinkenMovie *pMovie); void BlinkenMovieRotateCcw(stBlinkenMovie *pMovie); void BlinkenMovieRotateHalf(stBlinkenMovie *pMovie); void BlinkenMovieMirrorHor(stBlinkenMovie *pMovie); void BlinkenMovieMirrorVer(stBlinkenMovie *pMovie); void BlinkenMovieMirrorDiag(stBlinkenMovie *pMovie); void BlinkenMovieMirrorDiag2(stBlinkenMovie *pMovie); char *BlinkenMovieToString(stBlinkenMovie *pMovie); stBlinkenMovie *BlinkenMovieLoadBlm(const char *pFilename); stBlinkenMovie *BlinkenMovieLoadBmm(const char *pFilename); stBlinkenMovie *BlinkenMovieLoadBml(const char *pFilename); stBlinkenMovie *BlinkenMovieLoadBbm(const char *pFilename); #ifdef BLINKENLIB_CFG_MNG stBlinkenMovie *BlinkenMovieLoadMng(const char *pFilename); #endif // #ifdef BLINKENLIB_CFG_MNG stBlinkenMovie *BlinkenMovieLoad(const char *pFilename); int BlinkenMovieSaveBlm(stBlinkenMovie *pMovie, const char *pFilename); int BlinkenMovieSaveBmm(stBlinkenMovie *pMovie, const char *pFilename); int BlinkenMovieSaveBml(stBlinkenMovie *pMovie, const char *pFilename); int BlinkenMovieSaveBbm(stBlinkenMovie *pMovie, const char *pFilename); #ifdef BLINKENLIB_CFG_MNG int BlinkenMovieSaveMng(stBlinkenMovie *pMovie, const char *pFilename); #endif // #ifdef BLINKENLIB_CFG_MNG int BlinkenMovieSave(stBlinkenMovie *pMovie, const char *pFilename); void BlinkenMovieSend(stBlinkenMovie *pMovie, SOCKET udpSocket, etBlinkenProto proto, int maxidle); // udp socket must be "connected" // maxidle is the maximum idle time between two frames in ms (last frame is // repeated after this time), use 0 to turn off this feature stBlinkenMovie *BlinkenMovieReceive(SOCKET udpSocket, int timeout, etBlinkenProto * pProto); // udp socket must be "bound" and should be "connected" // after timeout ms of no reception, the movie is considered to be complete // returns protocol in *pProto if pProto not NULL #ifdef __cplusplus } // extern "C" #endif #endif // #ifndef INC_BlinkenLib_BlinkenMovie