This file is indexed.

/usr/include/avifile-0.7/videoencoder.h is in libavifile-0.7-dev 1:0.7.48~20090503.ds-18.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#ifndef AVIFILE_IVIDEOENCODER_H
#define AVIFILE_IVIDEOENCODER_H

/********************************************************

	Video encoder interface
	Copyright 2000 Eugene Kuznetsov  (divx@euro.ru)

*********************************************************/

#include "infotypes.h"
#include "image.h"

AVM_BEGIN_NAMESPACE;

/**
 *
 *    Video encoder class.
 *
 *  Usage:
 *	
 *   Create encoder object. Optionally
 * set quality and key-frame frequency. Call Start().
 * Call GetOutputSize() to identify maximum possible
 * size of compressed frame. Allocate buffer of this size.
 * Pass it as 'dest' in calls to EncodeFrame(). At the end
 * call Stop(). Do not forget to delete the object.
 *
 *  Some codec DLLs have be controlled by special codec-specific
 * parameters. In Windows you can set them from codec configuration 
 * dialog, but since we are completely GUI-independent, we'll need
 * an internal method to set them. Currently it is done by calling
 * static func SetExtendedAttr(), which takes FOURCC of codec, 
 * name of parameter and its integer value. Complete list of
 * supported attributes can be retrieved as GetCodecInfo().encoder_info.
 * SetExtendedAttr() should be called before object creation,
 * because values for these attributes are typically stored in 
 * registry and read by codec during object creation.
 *
 */
class AVMEXPORT IVideoEncoder
{
public:
    enum CAPS
    {
	CAP_NONE = 0,
        // packed
	CAP_IYUV = 1,
	CAP_YUY2 = 2,
	CAP_UYVY = 4,
	CAP_YVYU = 8,
        // planar
	CAP_YV12 = 128,
	CAP_I420 = 256
    };

    IVideoEncoder(const CodecInfo& info);
    virtual ~IVideoEncoder();
    virtual int EncodeFrame(const CImage* src, void* dest, int* is_keyframe,
			    size_t* size, int* lpckid = 0)	=0;
    virtual const CodecInfo& GetCodecInfo() const;
    virtual const BITMAPINFOHEADER& GetOutputFormat() const	=0;
    virtual size_t GetOutputSize() const			=0;

    virtual int Start()						=0;
    virtual int Stop()						=0;

    virtual float GetFps() const;
    virtual int SetFps(float fps);

#ifdef AVM_COMPATIBLE
    /* just for backward compatibility */
    int QueryOutputSize() const { return (int)GetOutputSize(); };
    const BITMAPINFOHEADER& QueryOutputFormat() const { return GetOutputFormat(); }

    /* use Attribute stuff for these */
    int GetQuality() const { return -1; }
    int SetQuality(int quality) { return -1; }
    int GetKeyFrame() const { return -1; }
    int SetKeyFrame(int frequency) { return -1; }
#endif

protected:
    const CodecInfo& m_Info;
};

AVM_END_NAMESPACE;

#endif // AVIFILE_IVIDEOENCODER_H