diff options
author | Justin Ruggles <jruggle@earthlink.net> | 2008-08-10 20:29:43 +0000 |
---|---|---|
committer | Robert Swain <robert.swain@gmail.com> | 2008-08-10 20:29:43 +0000 |
commit | ea779d91cae8a30e316c11f3ec7a03b3f3f7fae0 (patch) | |
tree | ddb85ed824cf5916f5838876e5c2d2f17a08b550 /libavcodec | |
parent | af1761915bda2a5bd53024975234b25e3fbbcb59 (diff) | |
download | ffmpeg-ea779d91cae8a30e316c11f3ec7a03b3f3f7fae0.tar.gz |
Add a generic function to lavc to log messages about missing features.
Patch by Justin Ruggles (justin ruggles gmail com)
Originally committed as revision 14685 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/avcodec.h | 12 | ||||
-rw-r--r-- | libavcodec/utils.c | 13 |
2 files changed, 25 insertions, 0 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h index c9f8ae4530..b141e32037 100644 --- a/libavcodec/avcodec.h +++ b/libavcodec/avcodec.h @@ -3011,6 +3011,18 @@ int av_parse_video_frame_size(int *width_ptr, int *height_ptr, const char *str); */ int av_parse_video_frame_rate(AVRational *frame_rate, const char *str); +/** + * Logs a generic warning message about a missing feature. + * @param[in] avc a pointer to an arbitrary struct of which the first field is + * a pointer to an AVClass struct + * @param[in] feature string containing the name of the missing feature + * @param[in] want_sample indicates if samples are wanted which exhibit this feature. + * If \p want_sample is non-zero, additional verbage will be added to the log + * message which tells the user how to report samples to the development + * mailing list. + */ +void av_log_missing_feature(void *avc, const char *feature, int want_sample); + /* error handling */ #if EINVAL > 0 #define AVERROR(e) (-(e)) /**< Returns a negative error code from a POSIX error code, to return from library functions. */ diff --git a/libavcodec/utils.c b/libavcodec/utils.c index 599226145a..8ca19aed00 100644 --- a/libavcodec/utils.c +++ b/libavcodec/utils.c @@ -1513,3 +1513,16 @@ int av_parse_video_frame_rate(AVRational *frame_rate, const char *arg) else return 0; } + +void av_log_missing_feature(void *avc, const char *feature, int want_sample) +{ + av_log(avc, AV_LOG_WARNING, "%s not implemented. Update your FFmpeg " + "version to the newest one from SVN. If the problem still " + "occurs, it means that your file has a feature which has not " + "been implemented.", feature); + if(want_sample) + av_log(avc, AV_LOG_WARNING, " If you want to help, upload a sample " + "of this file to ftp://upload.mplayerhq.hu/MPlayer/incoming/ " + "and contact the FFmpeg-devel mailing list."); + av_log(avc, AV_LOG_WARNING, "\n"); +} |