{"_id":"ffprobe","_rev":"10-9b00ff827db247ae8efe3524fe8e640b","name":"ffprobe","description":"Use ffprobe to get info from media files and return as JSON","dist-tags":{"latest":"1.1.2"},"versions":{"1.0.0":{"name":"ffprobe","version":"1.0.0","description":"Use ffprobe to get info from media files and return as JSON","main":"index.js","scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/eugeneware/ffprobe.git"},"keywords":["json","ffmpeg","ffprobe","media","video","audio","image","images"],"author":{"name":"Eugene Ware","email":"eugene@noblesamurai.com"},"license":"BSD-3-Clause","bugs":{"url":"https://github.com/eugeneware/ffprobe/issues"},"dependencies":{"JSONStream":"^1.0.7"},"devDependencies":{"expect.js":"~0.3.0","ffprobe-static":"^1.1.0","mocha":"~2.1.0"},"gitHead":"117f10d4edd857c476d325d17921280262715a1a","homepage":"https://github.com/eugeneware/ffprobe#readme","_id":"ffprobe@1.0.0","_shasum":"c225d225ef47f065aafe98492fa45343be6056ef","_from":".","_npmVersion":"3.4.0","_nodeVersion":"0.12.7","_npmUser":{"name":"eugeneware","email":"eugene@noblesamurai.com"},"maintainers":[{"name":"eugeneware","email":"eugene@noblesamurai.com"}],"dist":{"shasum":"c225d225ef47f065aafe98492fa45343be6056ef","tarball":"https://registry.npmjs.org/ffprobe/-/ffprobe-1.0.0.tgz","integrity":"sha512-BzMq0FRI80VK0O3G1/lGEMndeIRVRND5WNxgBfhYFMFKK34kIU5X10ZgFS31FK7EQbzzkH5xB2jtvmH9lkoJ5g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAg5c0bzuGjMPpU5MdwmN9KHc+eVqVIkBv0z/1Ad3Q8EAiEA9BNyQsg1a6hpka9AtYlW/0GAxRYjkd8YPg0L+xTuCzg="}]},"directories":{}},"1.1.0":{"name":"ffprobe","version":"1.1.0","description":"Use ffprobe to get info from media files and return as JSON","main":"index.js","scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/eugeneware/ffprobe.git"},"keywords":["json","ffmpeg","ffprobe","media","video","audio","image","images"],"author":{"name":"Eugene Ware","email":"eugene@noblesamurai.com"},"license":"BSD-3-Clause","bugs":{"url":"https://github.com/eugeneware/ffprobe/issues"},"dependencies":{"JSONStream":"^1.0.7","bl":"^1.0.0","deferential":"^1.0.0"},"devDependencies":{"expect.js":"~0.3.0","ffprobe-static":"^1.1.0","mocha":"~2.1.0"},"gitHead":"8ab490e3160ffbfb866d9ee0e7798a941f901112","homepage":"https://github.com/eugeneware/ffprobe#readme","_id":"ffprobe@1.1.0","_shasum":"f64f0ea44e33c80fc1f7aefe31fc4b3707d2acce","_from":".","_npmVersion":"3.4.0","_nodeVersion":"0.12.7","_npmUser":{"name":"eugeneware","email":"eugene@noblesamurai.com"},"maintainers":[{"name":"eugeneware","email":"eugene@noblesamurai.com"}],"dist":{"shasum":"f64f0ea44e33c80fc1f7aefe31fc4b3707d2acce","tarball":"https://registry.npmjs.org/ffprobe/-/ffprobe-1.1.0.tgz","integrity":"sha512-IlVRdwV/BUXDBqmtRiAvP17kHyDmS0On+YLxFc2G7eMrzAaJaPLYuhaDaddbnG3AyJ9bwv8BxE2V0/98g9/JKQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnhgYByVsd5bBtHvsLyNgrQ0rgBWQ0a4zh1EyWr8RNFQIhAM3OleZulHhrpXf+OcNmzauYHj365+bWtA8fzyXtqmVr"}]},"directories":{}},"1.1.1":{"name":"ffprobe","version":"1.1.1","description":"Use ffprobe to get info from media files and return as JSON","main":"index.js","scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/eugeneware/ffprobe.git"},"keywords":["json","ffmpeg","ffprobe","media","video","audio","image","images"],"author":{"name":"Eugene Ware","email":"eugene@noblesamurai.com"},"license":"BSD-3-Clause","bugs":{"url":"https://github.com/eugeneware/ffprobe/issues"},"dependencies":{"JSONStream":"^1.3.5","bl":"^4.0.3","deferential":"^1.0.0"},"devDependencies":{"expect.js":"~0.3.0","ffprobe-static":"^3.0.0","mocha":"^8.1.3"},"gitHead":"eed917b3777491a2607f5e4caa7b6fdfce581e8b","homepage":"https://github.com/eugeneware/ffprobe#readme","_id":"ffprobe@1.1.1","_nodeVersion":"12.18.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-/0dAz96r1g6bLRmxHvUX3YroCW8TEHBv+ihh2/Byex/bHH+3gTTBbAXKtOb3PRRzDAuqkv/UiLtAz4YI0LVwpA==","shasum":"538130f25207dfba35b04b5a024d453dc767a7ee","tarball":"https://registry.npmjs.org/ffprobe/-/ffprobe-1.1.1.tgz","fileCount":7,"unpackedSize":22369,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWC3OCRA9TVsSAnZWagAAZ54P/jXY0JmUf1k37oBglWkC\n2PA4BLLQ8RDcjSguU5rqQkAN+zXM6pIqvXRtijogpj+jTiFqnaInoTbBSryF\nlQNd77c0ZtZDBr4AAUgWZeySFobigEfxJkXAjquhOA9bXocygdwmshggdb1W\ncvvt75jnra/bmZ9T6t2q0vdAM3XeS078vgaYaPJ6jkIvol6O4VYdeW2fs7lL\noQ2tljSiz6NW1EUgz0aXE/HCo9qO3LsXbNVEdVf+PLEkN39UynDNvJFjlM5z\nWtupm9znv3qwkogjQYs3DBp2oRHpiVGaVHQCick1ij+vSdgftiVoBPRC+45B\nAeTXJ6GKjKJhhRLkX32cqtNjOlSnqqxTiDAiZNoHAuGrS0hNn+icNwuHLDHd\nWQOOVY9xD4PmSanmAc3ORXrVRI6dt9UQO7N73hebD/fjImWgtiGQ6tkK5b3x\nT/iMjy8INcSkNZsmn1nUKXFlnKs0IS8ajaDDkwFzjneLHRvIawBcAZfhrixp\nLtg8lq+4EHZ/ZYQ7HTv7iM6yk1Ilg+C/bPGsufmzvfbUsp2a+DpIjHtkrYfU\nB2S2hXF1yluE7BBroVwLeEmMsEZeF3b0IaVx2VeeSzfzVj1Zk2Gv0vdWBTrN\nkqthDdSovOo7vpysrhCOqIOM5v0+qKOFROKWeRyBaoDTtLn82xkrYP9yyChw\ndc1y\r\n=6G1B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHw8E0pTl+1mXHFxu/69bJWcurlZQ2APyyB1wLDCgLu1AiBXZ1Vv0zTWFz5e3zKplJ9qMROWlbxjIjaWjaEFRjMcsA=="}]},"maintainers":[{"name":"eugeneware","email":"eugene@noblesamurai.com"}],"_npmUser":{"name":"eugeneware","email":"eugene@noblesamurai.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ffprobe_1.1.1_1599614414220_0.7830507964201476"},"_hasShrinkwrap":false},"1.1.2":{"name":"ffprobe","version":"1.1.2","description":"Use ffprobe to get info from media files and return as JSON","main":"index.js","scripts":{"test":"mocha"},"repository":{"type":"git","url":"git+https://github.com/eugeneware/ffprobe.git"},"keywords":["json","ffmpeg","ffprobe","media","video","audio","image","images"],"author":{"name":"Eugene Ware","email":"eugene@noblesamurai.com"},"license":"BSD-3-Clause","bugs":{"url":"https://github.com/eugeneware/ffprobe/issues"},"dependencies":{"JSONStream":"^1.3.5","bl":"^4.0.3","deferential":"^1.0.0"},"devDependencies":{"expect.js":"~0.3.0","ffprobe-static":"^3.0.0","mocha":"^8.1.3"},"gitHead":"b4cfe53fb4af3197790edcd90983c8589984bb2b","homepage":"https://github.com/eugeneware/ffprobe#readme","_id":"ffprobe@1.1.2","_nodeVersion":"12.18.0","_npmVersion":"6.14.4","dist":{"integrity":"sha512-a+oTbhyeM7Z8PRy+mpzmVUAnATZT7z4BO94HSKeqHupdmjiKZ1djzcZkyoyXA21zCOCG7oVRrsBMmvvtmzoz4g==","shasum":"34123e8d751b15bd089b987f0a67468b3745be8c","tarball":"https://registry.npmjs.org/ffprobe/-/ffprobe-1.1.2.tgz","fileCount":7,"unpackedSize":22365,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfWC5wCRA9TVsSAnZWagAAe1oP+wXYk/i2sktosItdH3X7\nSo9iqvlcOKl2HyNkRqu/W02QffGK2A7ej4ZOy1IjcZAlKI0bXcEyf4Vu8Awz\nkbu+8BKcgg0Oz8epxsqI+/S6JKrtjcC4V1+U1llz74cbF6CY5X2TlNkDQ89f\n91hytcaihE2FyXxsCINoxkgU01k/uyY0/A6niOixWjQUaR8TjL4TYgP6mbgu\npk8YmjKRXBkLpTwyrlmEpGBFBcXkrh+Fwh2W/y8qfS3cDRWu83QK/TPK99eN\nHqG4VCVGC0EfLo9VoDb5mgOvZk5hJRjAgyumOzAQ1+Ht9zaSaNCHKz6m1EYJ\nWcsufU1qfC7e7fZiELltTR7Ar1tlpG4085j0SDE6ZWQzaVL6761Ar42xFwB4\noJ8rOZyTVz5C1F5PLKLnPt04mKur2GB/JmtXTG/podrw/r9O1R+dk2WyHyBz\nauNhYtww53fjk+8ha0zhFSUcYhe/QIhPWT+ImHlU/tImVRvPxxD/5fLhHUQK\nP2rTqr/rnHKXaQqfAtVOwZR3EQFkDFG6v+72mQNIM48Tx93na1MMlG5NtoFo\nmAM+21yj50DykRjEkNKX43/BjTEi+LQWyNox69Nak4IYWr5UtBnTJI/rp+tq\nA2A7aUESeyQcJMfonv/aFfp3+kZ1pNUpIgQIANOrq+TVMPjyFBuof2CC5dXH\nWTzV\r\n=0rJU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDEN0YK4i9AQNrEOiuSa0cDF72eMFZ82iCMnVMkF6oYOwIhAOf+apInz825WVloh5Zxo/qLguPztjTQiZSqpYfl2kHx"}]},"maintainers":[{"name":"eugeneware","email":"eugene@noblesamurai.com"}],"_npmUser":{"name":"eugeneware","email":"eugene@noblesamurai.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ffprobe_1.1.2_1599614575600_0.9622201519540028"},"_hasShrinkwrap":false}},"readme":"# ffprobe\n\nUse ffprobe to get info from media files and return as JSON\n\n[![build status](https://secure.travis-ci.org/eugeneware/ffprobe.png)](http://travis-ci.org/eugeneware/ffprobe)\n\n## Installation\n\nThis module is installed via npm:\n\n``` bash\n$ npm install ffprobe\n```\n\n## Example Usage\n\n`ffprobe` is a *dual* API, supporting both node.js callbacks *AND* `Promise`s.\n\n### Callback API\nList the output of ffprobe for a media file in a convenient JSON format:\n\n``` js\nvar ffprobe = require('ffprobe'),\n    ffprobeStatic = require('ffprobe-static');\n\nffprobe('./file.mp4', { path: ffprobeStatic.path }, function (err, info) {\n  if (err) return done(err);\n  console.log(info);\n/***\n{\n    \"streams\": [\n        {\n            \"index\": 0,\n            \"codec_name\": \"h264\",\n            \"codec_long_name\": \"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\",\n            \"profile\": \"High\",\n            \"codec_type\": \"video\",\n            \"codec_time_base\": \"1/50\",\n            \"codec_tag_string\": \"avc1\",\n            \"codec_tag\": \"0x31637661\",\n            \"width\": 1280,\n            \"height\": 720,\n            \"coded_width\": 1280,\n            \"coded_height\": 720,\n            \"has_b_frames\": 0,\n            \"sample_aspect_ratio\": \"1:1\",\n            \"display_aspect_ratio\": \"16:9\",\n            \"pix_fmt\": \"yuv420p\",\n            \"level\": 31,\n            \"chroma_location\": \"left\",\n            \"refs\": 1,\n            \"is_avc\": \"1\",\n            \"nal_length_size\": \"4\",\n            \"r_frame_rate\": \"25/1\",\n            \"avg_frame_rate\": \"25/1\",\n            \"time_base\": \"1/25\",\n            \"start_pts\": 0,\n            \"start_time\": \"0.000000\",\n            \"duration_ts\": 299,\n            \"duration\": \"11.960000\",\n            \"bit_rate\": \"1031739\",\n            \"bits_per_raw_sample\": \"8\",\n            \"nb_frames\": \"299\",\n            \"disposition\": {\n                \"default\": 1,\n                \"dub\": 0,\n                \"original\": 0,\n                \"comment\": 0,\n                \"lyrics\": 0,\n                \"karaoke\": 0,\n                \"forced\": 0,\n                \"hearing_impaired\": 0,\n                \"visual_impaired\": 0,\n                \"clean_effects\": 0,\n                \"attached_pic\": 0\n            },\n            \"tags\": {\n                \"language\": \"und\",\n                \"handler_name\": \"VideoHandler\"\n            }\n        },\n        {\n            \"index\": 1,\n            \"codec_name\": \"aac\",\n            \"codec_long_name\": \"AAC (Advanced Audio Coding)\",\n            \"profile\": \"LC\",\n            \"codec_type\": \"audio\",\n            \"codec_time_base\": \"1/44100\",\n            \"codec_tag_string\": \"mp4a\",\n            \"codec_tag\": \"0x6134706d\",\n            \"sample_fmt\": \"fltp\",\n            \"sample_rate\": \"44100\",\n            \"channels\": 2,\n            \"channel_layout\": \"stereo\",\n            \"bits_per_sample\": 0,\n            \"r_frame_rate\": \"0/0\",\n            \"avg_frame_rate\": \"0/0\",\n            \"time_base\": \"1/44100\",\n            \"start_pts\": 0,\n            \"start_time\": \"0.000000\",\n            \"duration_ts\": 528384,\n            \"duration\": \"11.981497\",\n            \"bit_rate\": \"192287\",\n            \"max_bit_rate\": \"203120\",\n            \"nb_frames\": \"516\",\n            \"disposition\": {\n                \"default\": 1,\n                \"dub\": 0,\n                \"original\": 0,\n                \"comment\": 0,\n                \"lyrics\": 0,\n                \"karaoke\": 0,\n                \"forced\": 0,\n                \"hearing_impaired\": 0,\n                \"visual_impaired\": 0,\n                \"clean_effects\": 0,\n                \"attached_pic\": 0\n            },\n            \"tags\": {\n                \"creation_time\": \"2015-11-16 00:48:42\",\n                \"language\": \"eng\",\n                \"handler_name\": \"IsoMedia File Produced by Google, 5-11-2011\"\n            }\n        }\n    ]\n}\n **/\n});\n```\n\n### Promise API\nList the output of ffprobe for a media file in a convenient JSON format:\n\n``` js\nvar ffprobe = require('ffprobe'),\n    ffprobeStatic = require('ffprobe-static');\n\nffprobe('./file.mp4', { path: ffprobeStatic.path })\n  .then(function (info) {\n    console.log(info);\n    /***\n    {\n        \"streams\": [\n            {\n                \"index\": 0,\n                \"codec_name\": \"h264\",\n                \"codec_long_name\": \"H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10\",\n                \"profile\": \"High\",\n\n                ...\n                }\n            }\n        ]\n    }\n     **/\n  })\n  .catch(function (err) {\n    console.error(err);\n  })\n});\n```\n\n## API\n\n### `ffprobe(mediaFilePath, opts, [cb])`\n\n* `mediaFilePath` - path to your audio / video / image that you want to get media\n  info for.\n* `opts` - options object with the following options:\n  * `path` - path to ffprobe binary (You can use\n    [`ffprobe-static`](https://github.com/joshwnj/ffprobe-static) to easily get\n    a static binary that you can install with npm.\n* `cb(err, info)` - standard callback, with the info returned as a javascript\n  object. NB: If the `cb` parameter is not provided, a `Promise` will be returned\n  allowing chained `then()`, `catch()` methods.\n\n","maintainers":[{"name":"eugeneware","email":"eugene@noblesamurai.com"}],"time":{"modified":"2022-06-18T00:22:51.890Z","created":"2016-01-02T03:30:09.234Z","1.0.0":"2016-01-02T03:30:09.234Z","1.1.0":"2016-01-02T09:02:01.793Z","1.1.1":"2020-09-09T01:20:14.346Z","1.1.2":"2020-09-09T01:22:55.738Z"},"homepage":"https://github.com/eugeneware/ffprobe#readme","keywords":["json","ffmpeg","ffprobe","media","video","audio","image","images"],"repository":{"type":"git","url":"git+https://github.com/eugeneware/ffprobe.git"},"author":{"name":"Eugene Ware","email":"eugene@noblesamurai.com"},"bugs":{"url":"https://github.com/eugeneware/ffprobe/issues"},"license":"BSD-3-Clause","readmeFilename":"README.md","users":{"alexbinary":true,"zousandian":true,"letsbora":true}}