(Formerly known as Puffs: Parsing Untrusted File Formats Safely).Wuffs is a domain-specific language and library for wrangling untrusted file formats safely. Wrangling includes parsing, decoding and encoding. Examples of such file formats include images, audio, video, fonts and compressed archives.
parsing memory-safety programming-language codecA gentle introduction to video technology, although it's aimed at software developers / engineers, we want to make it easy for anyone to learn. This idea was born during a mini workshop for newcomers to video technology. The goal is to introduce some digital video concepts with a simple vocabulary, lots of visual elements and practical examples when possible, and make this knowledge available everywhere. Please, feel free to send corrections, suggestions and improve it.
video codec audio learning tutorial guide bitstream video-codec h264 h265 av1 compression arithmetic-coding frame-types adaptive-streaming dash vp9 hls ffmpeg handsonI was looking for a tutorial/book that would teach me how to start to use FFmpeg as a library (a.k.a. libav) and then I found the "How to write a video player in less than 1k lines" tutorial. Unfortunately it was deprecated, so I decided to write this one. Most of the code in here will be in c but don't worry: you can easily understand and apply it to your preferred language. FFmpeg libav has lots of bindings for many languages like python, go and even if your language doesn't have it, you can still support it through the ffi (here's an example with Lua).
ffmpeg ffmpeg-libraries libav tutorial codec video-processing transcode-videoSimple, cross platform tool for lossless trimming/cutting of video and audio files. Great for rough processing of large video files taken from a video camera, GoPro, drone, etc. It lets you quickly extract the good parts from your videos and discard GBs of data without losing quality. It doesn't do any decoding / encoding and is therefore extremely fast. This app uses the awesome ffmpeg (included) for doing the grunt work. Since LosslessCut is based on Chromium and uses the HTML5 video player, not all ffmpeg supported formats will be supported. The following formats/codecs should generally work: MP4, MOV, WebM, MKV, OGG, WAV, MP3, AAC, H264, Theora, VP8, VP9 For more information about supported formats / codecs, see https://www.chromium.org/audio-video. Note that the MPEG TS format is not supported. See known issues.
video editor ffmpeg video-files cut codec player losslessModern audio compression for the internet.
audio codec compressionSBE is an OSI layer 6 presentation for encoding and decoding binary application messages for low-latency financial applications. This repository contains the reference implementations in Java, C++, Golang, and C#. The Java and C++ SBE implementations are designed with work very efficiently with the Aeron messaging system for low-latency and high-throughput communications. The Java SBE implementation has a dependency on Agrona for its buffer implementations.
codec c-plus-plus encoder-decoder serializationMedia decoder and player for Ogg Vorbis/Opus/Theora and WebM video. Based around libogg, libvorbis, libtheora, libopus, libvpx, and libnestegg compiled to JavaScript with Emscripten.
multimedia audio video decoder codec player ogg oga ogv ogvjs ogv.js vorbis theora vp8 vp9 opus webm web-audio emscriptenConformance test passed on all vectors (PSNR > 96db). Keyj minimp3 conformance test fails on all vectors (PSNR < 96db), and free format is unsupported. This caused some problems when it was used here, and was the main motivation for this work.
mp3 audio small tiny codec decoder music sound single-header single-header-lib mp3-decoder mini minimal mini-mp3Pure-rust implementation of multimedia primitives and eventually demuxer, muxers and codecs.
multimedia audio video codecHPC cluster video encoder is a cluster application that provides near real-time encoding of video different formats and size. It's developed in C# using Microsoft Expression Encoder 3 object model, Microsoft Advanced VC-1 video codec and Microsoft HPC Pack 2008 SDK.
audio cluster codec directshowA .NET wrapper for the FFMPEG library, designed to be easy to use and as complete as possible!
video audio codec ffmpegP/Opus is a .NET library written in C# to wrap around the libopus C API/library to provide a more .NET friendly way of encoding and decoding Opus packets.
audio codec libopus low-latency opus-codecXiph Media Encoder is a wizard which help you to transcode automatically audio files in FLAC, Vorbis and Speex. It generates flexible PowerShell scripts.
codec encoder flac powershell speex vorbis wizardAn optimized implementation of the JPEG-LS standard for lossless and near-lossless image compression. JPEG-LS is a low-complexity standard that matches JPEG 2000 compression ratios. In terms of speed, CharLS outperforms open source and commercial JPEG LS implementations.
codec compression graphics imaging jpegThis interop-lib is using the original Ogg Vorbis libraries written in C offered by Xiph.Org to encode and decode audio material to and from the Ogg Vorbis audio format. The interface is similar to the original libraries, except that no memory handling is needed.
audio codec interop library voipbase64 is a robust base64 encoder/decoder that is fully compatible with atob() and btoa(), written in JavaScript. The base64-encoding and -decoding algorithms it uses are fully RFC 4648 compliant.A string representing the semantic version number.
codec decoder encoder base64 atob btoaUnless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
jpeg jpg encoder decoder codec image jsFFME is a close (and I'd like to think better) drop-in replacement for Microsoft's WPF MediaElement Control. While the standard MediaElement uses DirectX (DirectShow) for media playback, FFME uses FFmpeg to read and decode audio and video. This means that for those of you who want to support stuff like HLS playback, or just don't want to go through the hassle of installing codecs on client machines, using FFME might just be the answer.First off, let's review a few concepts. A packet is a group of bytes read from the input. All packets are of a specific MediaType (Audio, Video, Subtitle, Data), and contain some timing information and most importantly compressed data. Packets are sent to a Codec and in turn, the codec produces Frames. Please note that producing 1 frome does not always take exactly 1 packet. A packet may contain many frames but also a frame may require several packets for the decoder to build it. Frames will contain timing informattion and the raw, uncompressed data. Now, you may think you can use frames and show pixels on the screen or data to the sound card. We are close, but we still need to do some additional processing. Turns out different Codecs will produce different uncompressed data formats. For example, some video codecs will output pixel data in ARGB, some others in RGB, and some other in YUV420. Therefore, we will need to Convert these frames into something all hardware can use. I call these converted frames, MediaBlocks. These MediaBlocks will contain uncompressed data in standard Audio and Video formats.
ffmpeg ffplay mediaelement video h264 mpeg codec audio media-playback ffmpeg-binaries volume audio-processing mp3 mp4 dotnet-framework xamarin
We have large collection of open source products. Follow the tags from
Tag Cloud >>
Open source products are scattered around the web. Please provide information
about the open source projects you own / you use.
Add Projects.