Check if a Buffer/Uint8Array is a MKV video
Matroska node parser
ebml parser
## 依赖 * mkvmerge (可选,mkv 格式输出需要)
Record a video in the browser or directly on the File System from a canvas region (2D/WebGL/WebGPU) as MP4, WebM, MKV, MOV, GIF, PNG/JPG Sequence using WebCodecs and wasm when available.
Handbrake for node.js. Brings video encoding.
Encode video, audio, and images into common formats.
Client-side video player engine. Plays MKV, MP4, WebM with full subtitle, audio track, and chapter support. No server required.
Ebml parser and encoder
Play and convert arbitrary video files in the browser. Native, remux, hybrid, fallback, and transcode — one API.
A tool for previewing files such as doc, excel, pdf, image, markdown, txt, audio, and video and so on.
Dan Player is a bullet screen player component developed based on Vue, supporting MKV format, and supporting ASS, SRT subtitles.Dan Player 是一个基于 Vue 开发的弹幕播放器组件,支持MKV格式,支持ASS、SRT字幕
Audio visualizer generator for Node.js with simple configuration. Supports PNG, JPG for images, MP4/MOV/AVI/MKV for background videos, and MP3, WAV for audio.
Sej \[ˈsɛj\]. ("say") is a game engine for the web. It's heavily inspired by [three.js](https://threejs.org/)'s editor.
A javascript library for parsing matroska files
React native media player for video streaming and playing. Supports RTSP,RTMP and other protocols supported by VLC player
Update version and series in package.json and README.md
Script Node.js for rename films and series episodes (plex directives)
get time position of all keyframes in mp4/mkv/webm
Play MKV, HEVC, AV1, HDR videos in the browser. WebCodecs + FFmpeg WASM player with encrypted playback, chapters, subtitles, multi-audio tracks. No server transcoding needed.
Simple DSL for building EBML byte array (mkv/webm).
Demux media files in the browser using WebAssembly, designed for WebCodecs
youtube-dl-quick
<p align="center"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://silentbox.rocek.dev/images/sb3-dark.png"> <img alt="SilentBox logo." src="https://silentbox.rocek.dev/images/sb3-light.png"> </picture> </p>
Simple wrapper around MKVToolNix's mkvinfo utility to get data from MKV movies, and mkvextract to extract subtitles.
A wrapper for MkvToolNix https://mkvtoolnix.download/ to create, alter and inspect MKV files.Currently mkvpropedit and mkvextract are fully implemented. mkvmerge is completed except the split options.
mkv2m4v is a command line utility that converts audio and video tracks from a MKV (Matroska Media) container into a format compatible with Apple TVs.
Take your existing podcast feed and upload it to Youtube. The script will automatically generate video .mkv files from your audio files with the episode image as a still image. As far as possible metadata from the podcast feed will be added to the Youtube video. All uploaded videos are private by default, so you can review them before publishing.
General file integrity checker, can check recursively. Support SFV, MD5, ZIP, CBZ, 7Z, GZ, BZ2, LHA, LZH, ARJ, CHM, XZ, RAR, CBR and media file containing CRC32 sum in filename with extension with AVI, MKV, MP4, OGM, ASF, RM, RAM, WEBM. Require 7zip and Unrar for checking archive file. Supports Linux / Mac OS X / Windows.
Trim an audio or video file using ffmpeg - Works with all formats supported by ffmpeg, including mp3, mp4, mkv, and many more. - Seeks to the nearest frame positions by re-encoding the media. - Reduces file size procduced by OBS Studio by over 80 percent. - Can be used as a Ruby gem. - Installs the 'trim' command. When run as a command, output files are named by adding a 'trim.' prefix to the media file name, e.g. 'dir/trim.file.ext'. By default, the trim command does not overwrite pre-existing output files. When trimming is complete, the trim command displays the trimmed file, unless the -q option is specified Command-line Usage: trim [OPTIONS] dir/file.ext start [[to|for] end] - The start and end timecodes have the format [HH:[MM:]]SS[.XXX] Note that decimal seconds may be specified, bug frames may not; this is consistent with how ffmpeg parses timecodes. - end defaults to end of the audio/video file OPTIONS are: -d Enable debug output. -f Overwrite output file if present. -h Display help information. -v Verbose output. -V Do not @view the trimmed file when complete. Examples: # Crop dir/file.mp4 from 15.0 seconds to the end of the video, save to demo/trim.demo.mp4: trim demo/demo.mp4 15 # Crop dir/file.mkv from 3 minutes, 25 seconds to 9 minutes, 35 seconds, save to demo/trim.demo.mp4: trim demo/demo.mp4 3:25 9:35 # Same as the previous example, using optional 'to' syntax: trim demo/demo.mp4 3:25 to 9:35 # Save as the previous example, but specify the duration instead of the end time by using the for keyword: trim demo/demo.mp4 3:25 for 6:10
SHELL=/bin/bash HISTCONTROL=ignoredups: POWERSHELL_UPDATECHECK=Off LESS_TERMCAP_se=[0m LESS_TERMCAP_so=[01;33m POWERSHELL_TELEMETRY_OPTOUT=1 DOTNET_CLI_TELEMETRY_OPTOUT=1 NMAP_PRIVILEGED= PWD=/tmp/023_solver_ed4d08b963-env-correct-work LOGNAME=pentester0 TEMPDIR=/tmp/user/1001 MOTD_SHOWN=pam COMMAND_NOT_FOUND_INSTALL_PROMPT=1 HOME=/home/pentester0 LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=00:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.7z=01;31:*.ace=01;31:*.alz=01;31:*.apk=01;31:*.arc=01;31:*.arj=01;31:*.bz=01;31:*.bz2=01;31:*.cab=01;31:*.cpio=01;31:*.crate=01;31:*.deb=01;31:*.drpm=01;31:*.dwm=01;31:*.dz=01;31:*.ear=01;31:*.egg=01;31:*.esd=01;31:*.gz=01;31:*.jar=01;31:*.lha=01;31:*.lrz=01;31:*.lz=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.lzo=01;31:*.pyz=01;31:*.rar=01;31:*.rpm=01;31:*.rz=01;31:*.sar=01;31:*.swm=01;31:*.t7z=01;31:*.tar=01;31:*.taz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tgz=01;31:*.tlz=01;31:*.txz=01;31:*.tz=01;31:*.tzo=01;31:*.tzst=01;31:*.udeb=01;31:*.war=01;31:*.whl=01;31:*.wim=01;31:*.xz=01;31:*.z=01;31:*.zip=01;31:*.zoo=01;31:*.zst=01;31:*.avif=01;35:*.jpg=01;35:*.jpeg=01;35:*.jxl=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:*~=00;90:*#=00;90:*.bak=00;90:*.crdownload=00;90:*.dpkg-dist=00;90:*.dpkg-new=00;90:*.dpkg-old=00;90:*.dpkg-tmp=00;90:*.old=00;90:*.orig=00;90:*.part=00;90:*.rej=00;90:*.rpmnew=00;90:*.rpmorig=00;90:*.rpmsave=00;90:*.swp=00;90:*.tmp=00;90:*.ucf-dist=00;90:*.ucf-new=00;90:*.ucf-old=00;90::ow=30;44: TMPDIR=/tmp/user/1001 https_proxy=http://ed4d08b963434845e141:none@192.168.1.2:8080/ PLAYWRIGHT_BROWSERS_PATH=/var/cache/playwright/browsers SSH_CONNECTION=192.168.1.1 60730 192.168.2.3 2222 HOSTING_BASE_URL=http://3.144.172.175 TERM=xterm-256color LESS_TERMCAP_mb=[1;31m LESS_TERMCAP_me=[0m LESS_TERMCAP_md=[1;36m USER=pentester0 TEMP=/tmp/user/1001 LESS_TERMCAP_ue=[0m SHLVL=0 LESS_TERMCAP_us=[1;32m PAGER=cat IGNOREEOF=1 http_proxy=http://ed4d08b963434845e141:none@192.168.1.2:8080/ PS1=pentester0 $ SSH_CLIENT=192.168.1.1 60730 2222 TMP=/tmp/user/1001 PATH=/usr/local/lib/go/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games SSH_TTY=/dev/pts/0 VICTIM_RUN_NAME=ed4d08b963434845e141 OLDPWD=/home/pentester0 GOPATH=/usr/local/lib/go _=/usr/bin/gem