MuffintopSpeedo
lvl.2
Flight distance : 86483 ft
United States
Offline
|
MuffintopSpeedo Posted at 1-24 10:02
I completely agree -- such simple, trivial, and useful features, are reserved for more expensive drones? I don't like DJI's bait-and-switch routine where they promise you the world but fail to deliver.
Considering the streaming I/O bandwidth necessary to wrap the video in a MP4 container, why doesn't DJI add an additional data track to the video file like GoPro? No separate files but the data is ready to be used by DJI software or give customers the ability to copy that data track and export it to a SRT.
Here is an example of how GoPro does it:
{
"streams": [
{
"index": 0,
"codec_name": "h264",
"codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10",
"profile": "High",
"codec_type": "video",
"codec_time_base": "1001/60000",
"codec_tag_string": "avc1",
"codec_tag": "0x31637661",
"width": 1920,
"height": 1080,
"coded_width": 1920,
"coded_height": 1088,
"has_b_frames": 1,
"sample_aspect_ratio": "1:1",
"display_aspect_ratio": "16:9",
"pix_fmt": "yuvj420p",
"level": 41,
"color_range": "pc",
"color_space": "bt709",
"color_transfer": "bt709",
"color_primaries": "bt709",
"chroma_location": "left",
"refs": 1,
"is_avc": "true",
"nal_length_size": "4",
"r_frame_rate": "30000/1001",
"avg_frame_rate": "30000/1001",
"time_base": "1/90000",
"start_pts": 0,
"start_time": "0.000000",
"duration_ts": 7525518,
"duration": "83.616867",
"bit_rate": "29993280",
"bits_per_raw_sample": "8",
"nb_frames": "2506",
"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
},
"tags": {
"creation_time": "2018-10-27T10:41:14.000000Z",
"language": "eng",
"handler_name": "\tGoPro AVC",
"encoder": "GoPro AVC encoder",
"timecode": "11:02:41:27"
}
},
{
"index": 1,
"codec_name": "aac",
"codec_long_name": "AAC (Advanced Audio Coding)",
"profile": "LC",
"codec_type": "audio",
"codec_time_base": "1/48000",
"codec_tag_string": "mp4a",
"codec_tag": "0x6134706d",
"sample_fmt": "fltp",
"sample_rate": "48000",
"channels": 2,
"channel_layout": "stereo",
"bits_per_sample": 0,
"r_frame_rate": "0/0",
"avg_frame_rate": "0/0",
"time_base": "1/48000",
"start_pts": 0,
"start_time": "0.000000",
"duration_ts": 4014080,
"duration": "83.626667",
"bit_rate": "128000",
"max_bit_rate": "128000",
"nb_frames": "3920",
"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
},
"tags": {
"creation_time": "2018-10-27T10:41:14.000000Z",
"language": "eng",
"handler_name": "\tGoPro AAC",
"timecode": "11:02:41:27"
}
},
{
"index": 2,
"codec_type": "data",
"codec_tag_string": "tmcd",
"codec_tag": "0x64636d74",
"r_frame_rate": "0/0",
"avg_frame_rate": "29/1",
"time_base": "1/90000",
"start_pts": 0,
"start_time": "0.000000",
"duration_ts": 7525518,
"duration": "83.616867",
"nb_frames": "1",
"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
},
"tags": {
"creation_time": "2018-10-27T10:41:14.000000Z",
"language": "eng",
"handler_name": "\tGoPro TCD",
"timecode": "11:02:41:27"
}
},
{
"index": 3,
"codec_name": "bin_data",
"codec_long_name": "binary data",
"codec_type": "data",
"codec_tag_string": "gpmd",
"codec_tag": "0x646d7067",
"r_frame_rate": "0/0",
"avg_frame_rate": "0/0",
"time_base": "1/1000",
"start_pts": 0,
"start_time": "0.000000",
"duration_ts": 83627,
"duration": "83.627000",
"bit_rate": "38667",
"nb_frames": "83",
"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
},
"tags": {
"creation_time": "2018-10-27T10:41:14.000000Z",
"language": "eng",
"handler_name": "\tGoPro MET"
}
},
{
"index": 4,
"codec_type": "data",
"codec_tag_string": "fdsc",
"codec_tag": "0x63736466",
"r_frame_rate": "0/0",
"avg_frame_rate": "0/0",
"time_base": "1/90000",
"start_pts": 0,
"start_time": "0.000000",
"duration_ts": 7525518,
"duration": "83.616867",
"bit_rate": "10007",
"nb_frames": "6511",
"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
},
"tags": {
"creation_time": "2018-10-27T10:41:14.000000Z",
"language": "eng",
"handler_name": "\tGoPro SOS"
}
}
],
"format": {
"filename": "data.GoPro.x/2018-10-27T10.41.14.000000Z.MP4",
"nb_streams": 5,
"nb_programs": 0,
"format_name": "mov,mp4,m4a,3gp,3g2,mj2",
"format_long_name": "QuickTime / MOV",
"start_time": "0.000000",
"duration": "83.626667",
"size": "315445162",
"bit_rate": "30176514",
"probe_score": 100,
"tags": {
"major_brand": "mp41",
"minor_version": "538120216",
"compatible_brands": "mp41",
"creation_time": "2018-10-27T10:41:14.000000Z",
"firmware": "HD5.02.02.60.00"
}
}
}
|
|