37 #define OFFSET(x) offsetof(struct HashContext, x) 
   38 #define ENC AV_OPT_FLAG_ENCODING_PARAM 
   39 #if CONFIG_HASH_MUXER || CONFIG_FRAMEHASH_MUXER 
   40 static const AVOption hash_options[] = {
 
   47 #if CONFIG_MD5_MUXER || CONFIG_FRAMEMD5_MUXER 
   48 static const AVOption md5_options[] = {
 
   55 #if CONFIG_HASH_MUXER || CONFIG_MD5_MUXER 
   90 static const AVClass hashenc_class = {
 
   93     .option     = hash_options,
 
  103     .write_header      = hash_write_header,
 
  104     .write_packet      = hash_write_packet,
 
  105     .write_trailer     = hash_write_trailer,
 
  108     .priv_class        = &hashenc_class,
 
  113 static const AVClass md5enc_class = {
 
  116     .option     = md5_options,
 
  126     .write_header      = hash_write_header,
 
  127     .write_packet      = hash_write_packet,
 
  128     .write_trailer     = hash_write_trailer,
 
  131     .priv_class        = &md5enc_class,
 
  135 #if CONFIG_FRAMEHASH_MUXER || CONFIG_FRAMEMD5_MUXER 
  166     framehash_print_extradata(s);
 
  168     avio_printf(s->
pb, 
"#stream#, dts,        pts, duration,     size, hash\n");
 
  192                 for (j = 0; j < pkt->
side_data[i].
size; j += 
sizeof(uint32_t)) {
 
  218 #if CONFIG_FRAMEHASH_MUXER 
  219 static const AVClass framehash_class = {
 
  222     .option     = hash_options,
 
  232     .write_header      = framehash_write_header,
 
  233     .write_packet      = framehash_write_packet,
 
  234     .write_trailer     = framehash_write_trailer,
 
  237     .priv_class        = &framehash_class,
 
  241 #if CONFIG_FRAMEMD5_MUXER 
  242 static const AVClass framemd5_class = {
 
  245     .option     = md5_options,
 
  255     .write_header      = framehash_write_header,
 
  256     .write_packet      = framehash_write_packet,
 
  257     .write_trailer     = framehash_write_trailer,
 
  260     .priv_class        = &framemd5_class,
 
ptrdiff_t const GLvoid * data
 
#define LIBAVUTIL_VERSION_INT
 
This struct describes the properties of an encoded stream. 
 
#define AV_HASH_MAX_SIZE
Maximum value that av_hash_get_size() will currently return. 
 
const char * class_name
The name of the class; usually it is the same name as the context structure type to which the AVClass...
 
int64_t duration
Duration of this packet in AVStream->time_base units, 0 if unknown. 
 
AVStream ** streams
A list of all streams in the file. 
 
void avio_write(AVIOContext *s, const unsigned char *buf, int size)
 
void av_hash_init(AVHashContext *ctx)
Initialize or reset a hash context. 
 
An AV_PKT_DATA_PALETTE side data packet contains exactly AVPALETTE_SIZE bytes worth of palette...
 
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
 
simple assert() macros that are a bit more flexible than ISO C assert(). 
 
enum AVPacketSideDataType type
 
int av_hash_alloc(AVHashContext **ctx, const char *name)
Allocate a hash context for the algorithm specified by name. 
 
int extradata_size
Size of the extradata content in bytes. 
 
unsigned int nb_streams
Number of elements in AVFormatContext.streams. 
 
int void avio_flush(AVIOContext *s)
Force flushing of buffered data. 
 
const char * av_hash_get_name(const AVHashContext *ctx)
 
int ff_framehash_write_header(AVFormatContext *s)
Set the timebase for each stream from the corresponding codec timebase and print it. 
 
AVIOContext * pb
I/O context. 
 
void av_hash_update(AVHashContext *ctx, const uint8_t *src, int len)
Update a hash context with additional data. 
 
Describe the class of an AVClass context structure. 
 
void av_hash_freep(AVHashContext **ctx)
Free hash context and set hash context pointer to NULL. 
 
void av_hash_final_hex(struct AVHashContext *ctx, uint8_t *dst, int size)
Finalize a hash context and store the hexadecimal representation of the actual hash value as a string...
 
size_t av_strlcatf(char *dst, size_t size, const char *fmt,...)
 
AVPacketSideData * side_data
Additional packet data that can be provided by the container. 
 
void * priv_data
Format private data. 
 
uint8_t * extradata
Extra binary data needed for initializing the decoder, codec-dependent. 
 
int64_t dts
Decompression timestamp in AVStream->time_base units; the time at which the packet is decompressed...
 
struct AVHashContext * hash
 
AVCodecParameters * codecpar
 
uint64_t_TMPL AV_WL64 unsigned int_TMPL AV_RL32
 
This structure stores compressed data. 
 
int64_t pts
Presentation timestamp in AVStream->time_base units; the time at which the decompressed packet will b...
 
int avio_printf(AVIOContext *s, const char *fmt,...) av_printf_format(2