 |
Exiv2
|
Go to the documentation of this file.
31 #include "exiv2lib_export.h"
81 const char* printAudioEncoding(uint64_t i);
192 const static int RIFF_TAG_SIZE;
193 const static char* RIFF_CHUNK_HEADER_ICCP;
194 const static char* RIFF_CHUNK_HEADER_EXIF;
195 const static char* RIFF_CHUNK_HEADER_XMP;
197 bool continueTraversing_;
220 #endif // RIFFVIDEO_HPP
Helper structure for lookup tables for translations of numeric tag values to human readable labels.
Definition: tags_int.hpp:189
void odmlTagsHandler()
Interpret OpenDML tag information, and save it in the respective XMP container.
byte * pData_
Pointer to the buffer, 0 if none has been allocated.
Definition: types.hpp:269
std::string indent(int32_t d)
indent output for kpsRecursive in printStructure() .
Definition: image_int.cpp:106
Encoding and decoding of Exif data.
Class to access RIFF video files.
Definition: riffvideo.hpp:53
void tagDecoder(Exiv2::DataBuf &buf, unsigned long size)
Interpret tag information, and call the respective function to save it in the respective XMP containe...
void streamHandler(long size)
Interpret Stream tag information, and save it in the respective XMP container.
Type definitions for Exiv2 and related functionality.
bool empty() const
Return true if there is no IPTC metadata.
Definition: iptc.hpp:258
void infoTagsHandler()
Interpret INFO tag information, and save it in the respective XMP container.
void writeMetadata()
Write metadata back to the image.
Slice< T > makeSlice(T &cont, size_t begin, size_t end)
Return a new slice with the given bounds.
Definition: slice.hpp:673
void printStructure(std::ostream &out, PrintStructureOption option, int depth)
Print out the structure of image file.
EXIV2API const char * exvGettext(const char *str)
Translate a string using the gettext framework. This wrapper hides all the implementation details fro...
Definition: types.cpp:576
RiffVideo(BasicIo::AutoPtr io)
Constructor for a Riff video. Since the constructor can not return a result, callers should check the...
void skipListData()
Skips Particular Blocks of Metadata List.
EXIV2API std::string strError()
Return a system error message and the error code (errno). See strerror(3).
Definition: futils.cpp:356
Helper structure for lookup tables for translations of controlled vocabulary strings to their descrip...
Definition: tags_int.hpp:210
Value type suitable for simple XMP properties and XMP nodes of complex types which are not parsed int...
Definition: value.hpp:724
ExifData exifData_
Exif data container.
Definition: image.hpp:488
void junkHandler(long size)
Interpret Junk tag information, and save it in the respective XMP container.
void decodeBlock()
Check for a valid tag and decode the block at the current IO position. Calls tagDecoder() or skips to...
Concrete keys for XMP metadata.
Definition: properties.hpp:242
binaryToStringHelper< T > binaryToString(const Slice< T > sl)
format binary data for display in Image::printStructure()
Definition: image_int.hpp:125
void dateTimeOriginal(long size, int i=0)
Interprets DateTimeOriginal tag or stream name tag information, and save it in the respective XMP con...
EXIV2LIB_DEPRECATED_EXPORT Image::AutoPtr newRiffInstance(BasicIo::AutoPtr io, bool create)
Create a new RiffVideo instance and return an auto-pointer to it. Caller owns the returned object and...
virtual void clearMetadata()
Erase all buffered metadata. Metadata is not removed from the actual image until the writeMetadata() ...
Definition: image.cpp:549
void streamFormatHandler(long size)
Interpret Stream Format tag information, and save it in the respective XMP container.
static DecoderFct findDecoder(const std::string &make, uint32_t extendedTag, IfdId group)
Find the decoder function for a key.
Definition: tiffimage_int.cpp:1589
std::string stringFormat(const char *format,...)
format a string in the pattern of sprintf .
Definition: image_int.cpp:32
Internal class TiffParserWorker to parse TIFF data.
void printTiffStructure(BasicIo &io, std::ostream &out, PrintStructureOption option, int depth, size_t offset=0)
Print out the structure of image file.
Definition: image.cpp:531
An Image subclass to support RIFF video files.
virtual XmpData & xmpData()
Returns an XmpData instance containing currently buffered XMP data.
Definition: image.cpp:569
Utility class containing a character array. All it does is to take care of memory allocation and dele...
Definition: types.hpp:204
long size_
The current size of the buffer.
Definition: types.hpp:271
EXIV2API int32_t getLong(const byte *buf, ByteOrder byteOrder)
Read a 4 byte signed long value from the data buffer.
Definition: types.cpp:328
const char * label_
Translation of the tag value.
Definition: tags_int.hpp:191
const T * find(T(&src)[N], const K &key)
Find an element that matches key in the array src.
Definition: types.hpp:508
EXIV2LIB_DEPRECATED_EXPORT bool isRiffType(BasicIo &iIo, bool advance)
Check if the file iIo is a Riff Video.
Provides classes and functions to encode and decode Exif and Iptc data. The libexiv2 API consists of ...
Definition: asfvideo.hpp:36
bool empty() const
Return true if there is no XMP metadata.
Definition: xmp.cpp:365
virtual BasicIo & io() const
Return a reference to the BasicIo instance being used for Io.
Definition: image.cpp:731
virtual std::string path() const =0
Return the path to the IO resource. Often used to form comprehensive error messages where only a Basi...
void fillAspectRatio(long width=1, long height=1)
Calculates Aspect Ratio of a video, and stores it in the respective XMP container.
void readMetadata()
Read all metadata supported by a specific image format from the image. Before this method is called,...
#define EXV_WARNING
Shorthand for a temp warning log message object and return its ostringstream.
Definition: error.hpp:148
EXIV2API uint16_t getUShort(const byte *buf, ByteOrder byteOrder)
Read a 2 byte unsigned short value from the data buffer.
Definition: types.cpp:278
BasicIo::AutoPtr io_
Image data IO pointer.
Definition: image.hpp:487
virtual IptcData & iptcData()
Returns an IptcData instance containing currently buffered IPTC data.
Definition: image.cpp:564
ByteOrder
Type to express the byte order (little or big endian)
Definition: types.hpp:113
Contains internal objects which are not published and are not part of the libexiv2 API.
Definition: slice.hpp:40
void aviHeaderTagsHandler(long size)
Interpret Riff Header tag information, and save it in the respective XMP container.
std::auto_ptr< Image > AutoPtr
Image auto_ptr type.
Definition: image.hpp:84
const uint32_t root
Special tag: root IFD.
Definition: tiffcomposite_int.hpp:80
double returnSampleRate(Exiv2::DataBuf &buf, long divisor=1)
Calculates Sample Rate of a particular stream.
void nikonTagsHandler()
Interpret Nikon Tags related to Video information, and save it in the respective XMP container.
void streamDataTagHandler(long size)
Interpret Riff Stream Data tag information, and save it in the respective XMP container.
const int riff
Treating riff as an image type>
Definition: riffvideo.hpp:46
std::auto_ptr< BasicIo > AutoPtr
BasicIo auto_ptr type.
Definition: basicio.hpp:58
BasicError< char > Error
Error class used for exceptions (std::string based)
Definition: error.hpp:323
void fillDuration(double frame_rate, long frame_count)
Calculates Duration of a video, and stores it in the respective XMP container.
int add(const XmpKey &key, const Value *value)
Add an Xmpdatum from the supplied key and value pair. This method copies (clones) the value.
Definition: xmp.cpp:322
const char * label_
Description of the vocabulary string.
Definition: tags_int.hpp:212
@ string
IPTC string type.
Definition: types.hpp:147
void listHandler(long size)
Interpret Riff List tag information, and save it in the respective XMP container.
PrintStructureOption
Options for printStructure.
Definition: image.hpp:67
EXIV2API ExifData::const_iterator meteringMode(const ExifData &ed)
Return the metering mode setting.
Definition: easyaccess.cpp:417
#define EXV_ERROR
Shorthand for a temp error log message object and return its ostringstream.
Definition: error.hpp:150
std::string toString(const T &arg)
Utility function to convert the argument of any type to a string.
Definition: types.hpp:521
An interface for simple binary IO.
Definition: basicio.hpp:55
XmpData xmpData_
XMP data container.
Definition: image.hpp:490
std::string mimeType() const
Return the MIME type of the image.
Abstract base class defining the interface for an image. This is the top-level interface to the Exiv2...
Definition: image.hpp:81
Basic file utility functions required by Exiv2.
static ByteOrder decode(ExifData &exifData, IptcData &iptcData, XmpData &xmpData, const byte *pData, uint32_t size, uint32_t root, FindDecoderFct findDecoderFct, TiffHeaderBase *pHeader=0)
Decode TIFF metadata from a data buffer pData of length size into the provided metadata containers.
Definition: tiffimage_int.cpp:1666
EXIV2API uint32_t getULong(const byte *buf, ByteOrder byteOrder)
Read a 4 byte unsigned long value from the data buffer.
Definition: types.cpp:283
Error class for exceptions, log message class.