axiomatic-systems / Bento4

Full-featured MP4 format, MPEG DASH, HLS, CMAF SDK and tools
http://www.bento4.com
2.02k stars 482 forks source link

distribution through npm #32

Open nickdesaulniers opened 9 years ago

nickdesaulniers commented 9 years ago

so the command line utilities are building under emscripten. I plan on distributing them through node package manager (npm) so people can use them without having a C++ compiler installed, only Node.js. I have a little bit of cleaning up to do around command line argument handling, but then we'll be able to publish them.

I'm currently writing up documentation on Mozilla Developer Network for working with MSE using Bento4. The first step is to write everything recommending users build bento4 from source. Then, change the recommendation to the JavaScript versions once built. Finally, a stretch goal would be to make web applications where a user can use a file picker to import a file, and print the results of mp4dump or mp4info to the DOM.

I was going to put the relevant files for NPM in this repo in a subsequent PR. Using this issue to track the work.

nickdesaulniers commented 9 years ago

WIP: https://developer.mozilla.org/en-US/docs/Web/API/Media_Source_Extensions_API/Transcoding_assets_for_MSE

barbibulle commented 9 years ago

This is very cool!

On Wed, Oct 14, 2015 at 11:02 AM, Nick Desaulniers <notifications@github.com

wrote:

WIP: https://developer.mozilla.org/en-US/docs/Web/API/Media_Source_Extensions_API/Transcoding_assets_for_MSE

— Reply to this email directly or view it on GitHub https://github.com/axiomatic-systems/Bento4/issues/32#issuecomment-148137281 .

nickdesaulniers commented 9 years ago

yeah, so the command line tools through npm, except the python scripts. Right now I'm building a hybrid of mp4dump and mp4info that spits out a simple yes/no about proper fragmentation and the codec strings! Is there a method that tells you if you're fragmented, or do you have to manually iterate the atoms?

barbibulle commented 9 years ago

mp4info has a 'movie.fragments' boolean that tells you whether the file has fragments or not. Example:

"movie":{

"duration_ms":226487,

"duration":9988096,

"time_scale":44100,

"fragments":false

}

The codecs string is something that's done but that I haven't pushed up to GitHub yet (will do soon). The mp4info JSON output will have something like:

"codecs_string": "mp4a.40.2"

On Wed, Oct 14, 2015 at 2:10 PM, Nick Desaulniers notifications@github.com wrote:

yeah, so the command line tools through npm. Right now I'm building a hybrid of mp4dump and mp4info that spits out a simple yes/no about proper fragmentation and the codec strings! Is there a method that tells you if you're fragmented, or do you have to manually iterate the atoms?

— Reply to this email directly or view it on GitHub https://github.com/axiomatic-systems/Bento4/issues/32#issuecomment-148201493 .

nickdesaulniers commented 9 years ago

mp4info has a 'movie.fragments' boolean

fantastic, what a wonderful set of tools you've built!

Would you like my code to go in Source/JavaScript? Or should I maintain a separate repo? I'd rather not have to maintain my own.

himadrinath commented 4 years ago

bento4 modules not found