#include "libpostproc/postprocess.h"
#include "libavutil/avstring.h"
#include "libavutil/pixdesc.h"
+#include "libavutil/eval.h"
#include "libavcodec/opt.h"
#include "cmdutils.h"
#include "version.h"
{
char *tail;
const char *error;
- double d = strtod(numstr, &tail);
+ double d = av_strtod(numstr, &tail);
if (*tail)
error= "Expected number for %s but found: %s\n";
else if (d < min || d > max)
*po->u.float_arg = parse_number_or_die(opt, arg, OPT_FLOAT, -1.0/0.0, 1.0/0.0);
} else if (po->flags & OPT_FUNC2) {
if (po->u.func2_arg(opt, arg) < 0) {
- fprintf(stderr, "%s: invalid value '%s' for option '%s'\n", argv[0], arg, opt);
+ fprintf(stderr, "%s: failed to set value '%s' for option '%s'\n", argv[0], arg, opt);
exit(1);
}
} else {
void print_error(const char *filename, int err)
{
char errbuf[128];
+ const char *errbuf_ptr = errbuf;
- switch(err) {
-#if CONFIG_NETWORK
- case AVERROR(FF_NETERROR(EPROTONOSUPPORT)):
- fprintf(stderr, "%s: Unsupported network protocol\n", filename);
- break;
-#endif
- default:
- av_strerror(err, errbuf, sizeof(errbuf));
- fprintf(stderr, "%s: %s\n", filename, errbuf);
- }
+ if (av_strerror(err, errbuf, sizeof(errbuf)) < 0)
+ errbuf_ptr = strerror(AVUNERROR(err));
+ fprintf(stderr, "%s: %s\n", filename, errbuf_ptr);
}
#define PRINT_LIB_VERSION(outstream,libname,LIBNAME,indent) \
"FLAGS NAME NB_COMPONENTS BITS_PER_PIXEL\n"
"-----\n");
+#if !CONFIG_SWSCALE
+# define sws_isSupportedInput(x) 0
+# define sws_isSupportedOutput(x) 0
+#endif
+
for (pix_fmt = 0; pix_fmt < PIX_FMT_NB; pix_fmt++) {
const AVPixFmtDescriptor *pix_desc = &av_pix_fmt_descriptors[pix_fmt];
printf("%c%c%c%c%c %-16s %d %2d\n",
return yesno;
}
+
+int read_file(const char *filename, char **bufptr, size_t *size)
+{
+ FILE *f = fopen(filename, "rb");
+
+ if (!f) {
+ fprintf(stderr, "Cannot read file '%s': %s\n", filename, strerror(errno));
+ return AVERROR(errno);
+ }
+ fseek(f, 0, SEEK_END);
+ *size = ftell(f);
+ fseek(f, 0, SEEK_SET);
+ *bufptr = av_malloc(*size + 1);
+ if (!*bufptr) {
+ fprintf(stderr, "Could not allocate file buffer\n");
+ fclose(f);
+ return AVERROR(ENOMEM);
+ }
+ fread(*bufptr, 1, *size, f);
+ (*bufptr)[*size++] = '\0';
+
+ fclose(f);
+ return 0;
+}