fluent-ffmpeg / node-fluent-ffmpeg

A fluent API to FFMPEG (http://www.ffmpeg.org)
MIT License
7.97k stars 881 forks source link

Several Video Codec from Metadata #1178

Open simon-tannai opened 2 years ago

simon-tannai commented 2 years ago

Hello

I have a question about the content of .mov metadata:

{
  "streams": [
    {
      "index": 0,
      "codec_name": "hevc",
      "codec_long_name": "H.265 / HEVC (High Efficiency Video Coding)",
      "profile": "Main",
      "codec_type": "video",
      "codec_tag_string": "hvc1",
      "codec_tag": "0x31637668",
      "width": 600,
      "height": 1080,
      "coded_width": 608,
      "coded_height": 1088,
      "closed_captions": 0,
      "has_b_frames": 2,
      "sample_aspect_ratio": "601:600",
      "display_aspect_ratio": "601:1080",
      "pix_fmt": "yuvj420p",
      "level": 120,
      "color_range": "pc",
      "color_space": "bt709",
      "color_transfer": "bt709",
      "color_primaries": "bt709",
      "chroma_location": "left",
      "field_order": "unknown",
      "refs": 1,
      "id": "N/A",
      "r_frame_rate": "30000/1001",
      "avg_frame_rate": "30000/1001",
      "time_base": "1/30000",
      "start_pts": 0,
      "start_time": 0,
      "duration_ts": 472450,
      "duration": 15.748333,
      "bit_rate": 11221295,
      "max_bit_rate": "N/A",
      "bits_per_raw_sample": "N/A",
      "nb_frames": 472,
      "nb_read_frames": "N/A",
      "nb_read_packets": "N/A",
      "tags": {
        "creation_time": "2022-03-17T12:45:43.000000Z",
        "language": "und",
        "handler_name": "Core Media Video",
        "vendor_id": "[0][0][0][0]",
        "encoder": "HEVC"
      },
      "disposition": {
        "default": 1,
        "dub": 0,
        "original": 0,
        "comment": 0,
        "lyrics": 0,
        "karaoke": 0,
        "forced": 0,
        "hearing_impaired": 0,
        "visual_impaired": 0,
        "clean_effects": 0,
        "attached_pic": 0,
        "timed_thumbnails": 0,
        "captions": 0,
        "descriptions": 0,
        "metadata": 0,
        "dependent": 0,
        "still_image": 0
      }
    },
    {
      "index": 1,
      "codec_name": "aac",
      "codec_long_name": "AAC (Advanced Audio Coding)",
      "profile": "LC",
      "codec_type": "audio",
      "codec_tag_string": "mp4a",
      "codec_tag": "0x6134706d",
      "sample_fmt": "fltp",
      "sample_rate": 48000,
      "channels": 2,
      "channel_layout": "stereo",
      "bits_per_sample": 0,
      "id": "N/A",
      "r_frame_rate": "0/0",
      "avg_frame_rate": "0/0",
      "time_base": "1/48000",
      "start_pts": 0,
      "start_time": 0,
      "duration_ts": 755920,
      "duration": 15.748333,
      "bit_rate": 122357,
      "max_bit_rate": "N/A",
      "bits_per_raw_sample": "N/A",
      "nb_frames": 741,
      "nb_read_frames": "N/A",
      "nb_read_packets": "N/A",
      "tags": {
        "creation_time": "2022-03-17T12:45:43.000000Z",
        "language": "und",
        "handler_name": "Core Media Audio",
        "vendor_id": "[0][0][0][0]"
      },
      "disposition": {
        "default": 1,
        "dub": 0,
        "original": 0,
        "comment": 0,
        "lyrics": 0,
        "karaoke": 0,
        "forced": 0,
        "hearing_impaired": 0,
        "visual_impaired": 0,
        "clean_effects": 0,
        "attached_pic": 0,
        "timed_thumbnails": 0,
        "captions": 0,
        "descriptions": 0,
        "metadata": 0,
        "dependent": 0,
        "still_image": 0
      }
    },
    {
      "index": 2,
      "codec_name": "mjpeg",
      "codec_long_name": "Motion JPEG",
      "profile": "Progressive",
      "codec_type": "video",
      "codec_tag_string": "[0][0][0][0]",
      "codec_tag": "0x0000",
      "width": 1920,
      "height": 1080,
      "coded_width": 1920,
      "coded_height": 1080,
      "closed_captions": 0,
      "has_b_frames": 0,
      "sample_aspect_ratio": "1:1",
      "display_aspect_ratio": "16:9",
      "pix_fmt": "yuvj420p",
      "level": "-99",
      "color_range": "pc",
      "color_space": "bt470bg",
      "color_transfer": "unknown",
      "color_primaries": "unknown",
      "chroma_location": "center",
      "field_order": "unknown",
      "refs": 1,
      "id": "N/A",
      "r_frame_rate": "90000/1",
      "avg_frame_rate": "0/0",
      "time_base": "1/90000",
      "start_pts": 0,
      "start_time": 0,
      "duration_ts": 1417350,
      "duration": 15.748333,
      "bit_rate": "N/A",
      "max_bit_rate": "N/A",
      "bits_per_raw_sample": 8,
      "nb_frames": "N/A",
      "nb_read_frames": "N/A",
      "nb_read_packets": "N/A",
      "disposition": {
        "default": 0,
        "dub": 0,
        "original": 0,
        "comment": 0,
        "lyrics": 0,
        "karaoke": 0,
        "forced": 0,
        "hearing_impaired": 0,
        "visual_impaired": 0,
        "clean_effects": 0,
        "attached_pic": 1,
        "timed_thumbnails": 0,
        "captions": 0,
        "descriptions": 0,
        "metadata": 0,
        "dependent": 0,
        "still_image": 0
      }
    }
  ]
}

As you can see, there is two Video codec: hevc and mjpeg. The first one have Main profile, the second have Progressive.

What does mean this difference between Main and Progressive ?