73     int decoded = pkt.
size;
 
   81             fprintf(stderr, 
"Error decoding video frame (%s)\n", 
av_err2str(ret));
 
   88             fprintf(stderr, 
"Error: Width, height and pixel format have to be " 
   89                     "constant in a rawvideo file, but the width, height or " 
   90                     "pixel format of the input video changed:\n" 
   91                     "old: width = %d, height = %d, format = %s\n" 
   92                     "new: width = %d, height = %d, format = %s\n",
 
  100             printf(
"video_frame%s n:%d coded_n:%d pts:%s\n",
 
  101                    cached ? 
"(cached)" : 
"",
 
  118             fprintf(stderr, 
"Error decoding audio frame (%s)\n", 
av_err2str(ret));
 
  129             printf(
"audio_frame%s n:%d nb_samples:%d pts:%s\n",
 
  130                    cached ? 
"(cached)" : 
"",
 
  157     int ret, stream_index;
 
  165         fprintf(stderr, 
"Could not find %s stream in input file '%s'\n",
 
  170         st = fmt_ctx->
streams[stream_index];
 
  176             fprintf(stderr, 
"Failed to find %s codec\n",
 
  185             fprintf(stderr, 
"Failed to open %s codec\n",
 
  189         *stream_idx = stream_index;
 
  199     struct sample_fmt_entry {
 
  201     } sample_fmt_entries[] = {
 
  211         struct sample_fmt_entry *entry = &sample_fmt_entries[i];
 
  212         if (sample_fmt == entry->sample_fmt) {
 
  213             *fmt = 
AV_NE(entry->fmt_be, entry->fmt_le);
 
  219             "sample format %s is not supported as output format\n",
 
  224 int main (
int argc, 
char **argv)
 
  226     int ret = 0, got_frame;
 
  228     if (argc != 4 && argc != 5) {
 
  229         fprintf(stderr, 
"usage: %s [-refcount=<old|new_norefcount|new_refcount>] " 
  230                 "input_file video_output_file audio_output_file\n" 
  231                 "API example program to show how to read frames from an input file.\n" 
  232                 "This program reads frames from a file, decodes them, and writes decoded\n" 
  233                 "video frames to a rawvideo file named video_output_file, and decoded\n" 
  234                 "audio frames to a rawaudio file named audio_output_file.\n\n" 
  235                 "If the -refcount option is specified, the program use the\n" 
  236                 "reference counting frame system which allows keeping a copy of\n" 
  237                 "the data for longer than one decode call. If unset, it's using\n" 
  238                 "the classic old method.\n" 
  243         const char *
mode = argv[1] + strlen(
"-refcount=");
 
  248             fprintf(stderr, 
"unknow mode '%s'\n", mode);
 
  262         fprintf(stderr, 
"Could not open source file %s\n", 
src_filename);
 
  268         fprintf(stderr, 
"Could not find stream information\n");
 
  274         video_dec_ctx = video_stream->
codec;
 
  290             fprintf(stderr, 
"Could not allocate raw video buffer\n");
 
  311         fprintf(stderr, 
"Could not find audio or video stream in the input, aborting\n");
 
  319         frame = avcodec_alloc_frame();
 
  323         fprintf(stderr, 
"Could not allocate frame\n");
 
  347         } 
while (pkt.
size > 0);
 
  358     printf(
"Demuxing succeeded.\n");
 
  361         printf(
"Play the output video file with the command:\n" 
  362                "ffplay -f rawvideo -pix_fmt %s -video_size %dx%d %s\n",
 
  374             printf(
"Warning: the sample format the decoder produced is planar " 
  375                    "(%s). This example will output the first channel only.\n",
 
  376                    packed ? packed : 
"?");
 
  384         printf(
"Play the output audio file with the command:\n" 
  385                "ffplay -f %s -ac %d -ar %d %s\n",
 
  399         avcodec_free_frame(&frame);