Extracting Metadata from a video file (.mkv) using FFmpeg
I have a video file that contains 4 streams, 3 videos streams and one steam for metadata.
Stream Info:
Input #0, matroska,webm, from 'output_master.mkv':
Metadata:
title : Azure Kinect
encoder : libmatroska-1.4.9
creation_time : 2021-05-20T12:11:15.000000Z
K4A_DEPTH_DELAY_NS: 0
K4A_WIRED_SYNC_MODE: MASTER
K4A_COLOR_FIRMWARE_VERSION: 1.6.110
K4A_DEPTH_FIRMWARE_VERSION: 1.6.79
K4A_DEVICE_SERIAL_NUMBER: 000123102712
K4A_START_OFFSET_NS: 298800000
Duration: 00:00:40.03, start: 0.000000, bitrate: 480934 kb/s
Stream #0:0(eng): Video: mjpeg (Baseline) (MJPG / 0x47504A4D), yuvj422p(pc, bt470bg/unknown/unknown), 2048x1536, SAR 1:1 DAR 4:3, 30 fps, 30 tbr, 1000k tbn (default)
Metadata:
title : COLOR
K4A_COLOR_TRACK : 14499183330009048
K4A_COLOR_MODE : MJPG_1536P
Stream #0:1(eng): Video: rawvideo (b16g / 0x67363162), gray16be, 640x576, SAR 1:1 DAR 10:9, 30 fps, 30 tbr, 1000k tbn (default)
Metadata:
title : DEPTH
K4A_DEPTH_TRACK : 429408169412322196
K4A_DEPTH_MODE : NFOV_UNBINNED
Stream #0:2(eng): Video: rawvideo (b16g / 0x67363162), gray16be, 640x576, SAR 1:1 DAR 10:9, 30 fps, 30 tbr, 1000k tbn (default)
Metadata:
title : IR
K4A_IR_TRACK : 194324406376800992
K4A_IR_MODE : ACTIVE
Stream #0:3: Attachment: none
Metadata:
filename : calibration.json
mimetype : application/octet-stream
K4A_CALIBRATION_FILE: calibration.json
I am using the below command to extract Stream #0:0, Stream #0:1, and Stream #0:2 by changing map 0:X.
ffmpeg -i output_master.mkv -c copy -allow_raw_vfw 1 -map 0:0 temp_0.mkv
To extract the metadata from all the streams and store them in metadata.txt, I am using the command below:
ffprobe -v quiet -show_format -show_streams -print_format json output_master.mkv > metadata.txt
What should be the command to extract Stream #0:3? Any help would be appreciated.
Read more here: Source link
