diff options
-rw-r--r-- | src/lib/ffmpeg-0.7/avcodec.pas | 33 | ||||
-rw-r--r-- | src/lib/ffmpeg-0.7/libavutil/dict.pas | 1 | ||||
-rw-r--r-- | src/lib/ffmpeg-0.8/avcodec.pas | 34 | ||||
-rw-r--r-- | src/lib/ffmpeg-0.8/libavutil/dict.pas | 1 |
4 files changed, 69 insertions, 0 deletions
diff --git a/src/lib/ffmpeg-0.7/avcodec.pas b/src/lib/ffmpeg-0.7/avcodec.pas index 99f3e453..369a8e79 100644 --- a/src/lib/ffmpeg-0.7/avcodec.pas +++ b/src/lib/ffmpeg-0.7/avcodec.pas @@ -4065,6 +4065,39 @@ function avcodec_default_execute2(s: PAVCodecContext; func: TExecuteFunc; arg: P function avcodec_open(avctx: PAVCodecContext; codec: PAVCodec): cint; cdecl; external av__codec; +(** + * Initialize the AVCodecContext to use the given AVCodec. Prior to using this + * function the context has to be allocated with avcodec_alloc_context(). + * + * The functions avcodec_find_decoder_by_name(), avcodec_find_encoder_by_name(), + * avcodec_find_decoder() and avcodec_find_encoder() provide an easy way for + * retrieving a codec. + * + * @warning This function is not thread safe! + * + * @code + * avcodec_register_all(); + * av_dict_set(&opts, "b", "2.5M", 0); + * codec = avcodec_find_decoder(CODEC_ID_H264); + * if (!codec) + * exit(1); + * + * context = avcodec_alloc_context(); + * + * if (avcodec_open(context, codec, opts) < 0) + * exit(1); + * @endcode + * + * @param avctx The context to initialize. + * @param options A dictionary filled with AVCodecContext and codec-private options. + * On return this object will be filled with options that were not found. + * + * @return zero on success, a negative value on error + * @see avcodec_alloc_context3(), avcodec_find_decoder(), avcodec_find_encoder(), + * av_dict_set(), av_opt_find(). + *) +function avcodec_open2(avctx: PAVCodecContext; codec: PAVCodec; options: PPAVDictionary): cint; + cdecl; external av__codec; {$IF FF_API_AUDIO_OLD} (** diff --git a/src/lib/ffmpeg-0.7/libavutil/dict.pas b/src/lib/ffmpeg-0.7/libavutil/dict.pas index 6a924fd9..8235f108 100644 --- a/src/lib/ffmpeg-0.7/libavutil/dict.pas +++ b/src/lib/ffmpeg-0.7/libavutil/dict.pas @@ -41,6 +41,7 @@ type (* with the "help" of libavutil/internal.h: *) + PPAVDictionary = ^PAVDictionary; PAVDictionary = ^TAVDictionary; TAVDictionary = record count: cint; diff --git a/src/lib/ffmpeg-0.8/avcodec.pas b/src/lib/ffmpeg-0.8/avcodec.pas index a933fa8c..a8bae81f 100644 --- a/src/lib/ffmpeg-0.8/avcodec.pas +++ b/src/lib/ffmpeg-0.8/avcodec.pas @@ -3966,6 +3966,40 @@ function avcodec_open(avctx: PAVCodecContext; codec: PAVCodec): cint; cdecl; external av__codec; (** + * Initialize the AVCodecContext to use the given AVCodec. Prior to using this + * function the context has to be allocated with avcodec_alloc_context(). + * + * The functions avcodec_find_decoder_by_name(), avcodec_find_encoder_by_name(), + * avcodec_find_decoder() and avcodec_find_encoder() provide an easy way for + * retrieving a codec. + * + * @warning This function is not thread safe! + * + * @code + * avcodec_register_all(); + * av_dict_set(&opts, "b", "2.5M", 0); + * codec = avcodec_find_decoder(CODEC_ID_H264); + * if (!codec) + * exit(1); + * + * context = avcodec_alloc_context(); + * + * if (avcodec_open(context, codec, opts) < 0) + * exit(1); + * @endcode + * + * @param avctx The context to initialize. + * @param options A dictionary filled with AVCodecContext and codec-private options. + * On return this object will be filled with options that were not found. + * + * @return zero on success, a negative value on error + * @see avcodec_alloc_context3(), avcodec_find_decoder(), avcodec_find_encoder(), + * av_dict_set(), av_opt_find(). + *) +function avcodec_open2(avctx: PAVCodecContext; codec: PAVCodec; options: PPAVDictionary): cint; + cdecl; external av__codec; + +(** * Decode the audio frame of size avpkt->size from avpkt->data into samples. * Some decoders may support multiple frames in a single AVPacket, such * decoders would then just decode the first frame. In this case, diff --git a/src/lib/ffmpeg-0.8/libavutil/dict.pas b/src/lib/ffmpeg-0.8/libavutil/dict.pas index d50d3b0b..fc11f014 100644 --- a/src/lib/ffmpeg-0.8/libavutil/dict.pas +++ b/src/lib/ffmpeg-0.8/libavutil/dict.pas @@ -41,6 +41,7 @@ type (* with the "help" of libavutil/internal.h: *) + PPAVDictionary = ^PAVDictionary; PAVDictionary = ^TAVDictionary; TAVDictionary = record count: cint; |