OpenVCX
    
Open Source Video Conferencing and Streaming Server
 

Installation

Quick start installation guide for OpenVSX.  Read more


 

Wowza Streaming Engine

Example showing how to use OpenVSX with Wowza Streaming Engine.  Read more


 

Publish to Youtube

Stream live content to a CDN or Youtube.  Read more


 

Flash Media Encoder

Stream live content with Flash Media Encoder RTMP.  Read more


 

QuickTime Broadcaster

Stream live content with QuickTime Broadcaster RTSP.  Read more


 

Security and Encryption

Examples showing how to protect streaming content.  Read more


 

RTMP Streaming

Use RTMP to broadcast and capture live content.  Read more


 

RTSP Streaming

Use RTSP to broadcast and capture live content.  Read more


 

FLV Streaming

Stream live content to Flash player.  Read more


 

MPEG-DASH Streaming

Stream live content using MPEG-DASH.  Read more


 

WebM/HTML5 Streaming

Stream live content using a Matroska / WebM container.  Read more


 

HTTPLive Streaming

Stream live content to Apple devices using HTTPLive.  Read more


 

Analyze H.264 contents

OpenVSX can be used as a utilitity to take a closer look at the format of H.264 video.  Read more


 

Dump a container file

OpenVSX can be used as a utilitity to take a closer look at the format of MP4 container file.


 

Extract video and audio tracks from a media container

OpenVSX can be used as a utility to extract raw video and audio contents from container files.  Read more


 

Basic streaming output examples

Examples showing how to use the commandline to create stream output.  Read more


 

Command line to to dump the contents of a container file

./bin/vsx --dump=test.mp4
 

filename: test.mp4
size 16522244 
 * ftyp (File Type) size 28 (28) [0 (0x0) - 27 0x1b)]
   { ver:mp42 (0x6d703432), (0x00) isom avc1 mp42 }
 * moov (Movie) size 63813 ( [28 (0x1c) - 63840 0xf960)]
 | * mvhd (Movie Header) size 108 (108) [36 (0x24) - 143 0x8f)]
 |   { 600Hz, 00:03:31.7200 (0x1f038), rate:1.00000, vol:1.0000, next:0x3 }
 |   { create time: 11:57:22 09/30/2007 mod time: 11:57:22 09/30/2007 }
 | * iods (Initial Object Descriptor) size 21 (21) [144 (0x90) - 164 0xa4)]
 |   { type:0x10, etype:0x000, len:7, id:0x04f, profile levels:
 |     audio:AAC Profile - Level 2 (0x29)
 |     video:AVC/H264 Profile (0x15) }
 | * trak (Track) size 38689 ( [165 (0xa5) - 38853 0x97c5)]
 | |   { id:0x1, duration:0x1f037, layer:0x0, alt:0x0, vol:1.0000 }
 | |   { create time: 11:57:22 09/30/2007 mod time: 11:57:22 09/30/2007 }
 | | * mdia (Media) size 38589 ( [265 (0x109) - 38853 0x97c5)]
 | | | * mdhd (Media Header) size 32 (32) [273 (0x111) - 304 0x130)]
 | | |   { 44100Hz, 00:03:31.7195 (0x8e7800), lang:0x55c4 }
 | | |   { create time: 11:57:22 09/30/2007 mod time: 11:57:22 09/30/2007 }
 | | | * hdlr (Handler Reference) size 66 (66) [305 (0x131) - 370 0x172)]
 | | |   { type:soun (0x736f756e), name:'(C) 2007 Google Inc. v06.24.2007.'}
 | | | * minf (Media Information) size 38483 ( [371 (0x173) - 38853 0x97c5)]
 | | | | * smhd (Sound Media Header) size 16 (16) [379 (0x17b) - 394 0x18a)]
 | | | |   { balance: 0x0 }
 | | | | * dinf (Data Information) size 36 ( [395 (0x18b) - 430 0x1ae)]
 | | | | | * dref (Data Reference) size 28 (16) [403 (0x193) - 430 0x1ae)]
 | | | | | | * url  size 12 (12) [419 (0x1a3) - 430 0x1ae)]
 | | | | | |   { name:'' }
 | | | | * stbl (Sample Table) size 38423 ( [431 (0x1af) - 38853 0x97c5)]
 | | | | | * stsd (Sample Description) size 91 (16) [439 (0x1b7) - 529 0x211)]
 | | | | |   { entrycnt:1 }
 | | | | | | * mp4a size 75 (36) [455 (0x1c7) - 529 0x211)]
 | | | | | |   { dataref:0x1, sndver:0, channels:2, samplesize:16, 44100Hz (0xac44) }
 | | | | | | | * esds size 39 (39) [491 (0x1eb) - 529 0x211)]
 | | | | | | |   { 0x3, id: 0x0 stream dependence:0, url flag:0, OCR:0, priority:0 }
 | | | | | | |   { 0x4, object: 0x40 stream: 5, upstream: 0, bufsize: 493, maxrate:141272, avgrate:120664 }
 | | | | | | |   { 0x5, startcodes: 0x12 0x10 }
 | | | | | | |   {      type: AAC LC (Low Complexity) (0x2), freq: 44100Hz (0x4), channel: 2 fl, fr (0x2) 1024 samples/frame }
 | | | | | | |   { 0x6, sl: 0x2 }
 | | | | | * stts (Decoding Time To Sample) size 24 (24) [530 (0x212) - 553 0x229)]
 | | | | |   { entries: 1, 9118:1024 (0x400) }
 | | | | | * stsc (Sample To Chunk) size 52 (52) [554 (0x22a) - 605 0x25d)]
 | | | | |   { entries: 3 }
 | | | | | * stsz (Sample Sizes Box) size 36492 (36492) [606 (0x25e) - 37097 0x90e9)]
 | | | | |   { samplesize: 0, samplecount: 9118 }
 | | | | | * stco (Chunk Offset) size 1756 (1756) [37098 (0x90ea) - 38853 0x97c5)]
 | | | | |   { entrycnt: 435 }
 | * trak (Track) size 24231 ( [38854 (0x97c6) - 63084 0xf66c)]
 | |   { id:0x2, duration:0x1f038, layer:0x0, alt:0x0, vol:0.0000, 480x360 }
 | |   { create time: 11:57:22 09/30/2007 mod time: 11:57:22 09/30/2007 }
 | | * mdia (Media) size 24131 ( [38954 (0x982a) - 63084 0xf66c)]
 | | | * mdhd (Media Header) size 32 (32) [38962 (0x9832) - 38993 0x9851)]
 | | |   { 25000Hz, 00:03:31.7200 (0x50c3c8), lang:0x55c4 }
 | | |   { create time: 11:57:22 09/30/2007 mod time: 11:57:22 09/30/2007 }
 | | | * hdlr (Handler Reference) size 66 (66) [38994 (0x9852) - 39059 0x9893)]
 | | |   { type:vide (0x76696465), name:'(C) 2007 Google Inc. v06.24.2007.'}
 | | | * minf (Media Information) size 24025 ( [39060 (0x9894) - 63084 0xf66c)]
 | | | | * vmhd (Video Media Header) size 20 (20) [39068 (0x989c) - 39087 0x98af)]
 | | | |   { mode: 0x0 opcolor: 0x0 0x0 0x0}
 | | | | * dinf (Data Information) size 36 ( [39088 (0x98b0) - 39123 0x98d3)]
 | | | | | * dref (Data Reference) size 28 (16) [39096 (0x98b8) - 39123 0x98d3)]
 | | | | | | * url  size 12 (12) [39112 (0x98c8) - 39123 0x98d3)]
 | | | | | |   { name:'' }
 | | | | * stbl (Sample Table) size 23961 ( [39124 (0x98d4) - 63084 0xf66c)]
 | | | | | * stsd (Sample Description) size 161 (16) [39132 (0x98dc) - 39292 0x997c)]
 | | | | |   { entrycnt:1 }
 | | | | | | * avc1 size 145 (86) [39148 (0x98ec) - 39292 0x997c)]
 | | | | | |   { 480x360, dpi: 0x480000 x 0x480000, framecnt: 1, '', depth: 0x18 }
 | | | | | | | * avcC size 39 (39) [39234 (0x9942) - 39272 0x9968)]
 | | | | | | |   { ver:0x1, profile:Baseline (0x42), compat:0x0, level:21, len:0x1 }
 | | | | | | |   { sps[0]: 0x67 0x42 0x00 0x15 0xbb 0x40 0xf0 0x5f
 | | | | | | |             0xf2 0xe0 0x20 0x3c 0x20 0x10 0xa8 }
 | | | | | | |   { pps[0]: 0x68 0xce 0x04 0x89 0xc8 }
 | | | | | | | * btrt size 20 (20) [39273 (0x9969) - 39292 0x997c)]
 | | | | | | |   { buffer size: 17596, max: 937528 avg:501224 }
 | | | | | * stts (Decoding Time To Sample) size 24 (24) [39293 (0x997d) - 39316 0x9994)]
 | | | | |   { entries: 1, 5293:1000 (0x3e8) }
 | | | | | * stss (Sync Sample) size 756 (756) [39317 (0x9995) - 40072 0x9c88)]
 | | | | |   { entrycnt: 185 }
 | | | | | * stsc (Sample To Chunk) size 40 (40) [40073 (0x9c89) - 40112 0x9cb0)]
 | | | | |   { entries: 2 }
 | | | | | * stsz (Sample Sizes Box) size 21192 (21192) [40113 (0x9cb1) - 61304 0xef78)]
 | | | | |   { samplesize: 0, samplecount: 5293 }
 | | | | | * stco (Chunk Offset) size 1780 (1780) [61305 (0xef79) - 63084 0xf66c)]
 | | | | |   { entrycnt: 441 }
 | * udta (User Data) size 756 (756) [63085 (0xf66d) - 63840 0xf960)]
 * mdat (Media Data) size 16458403 (16458403) [63841 (0xf961) - 16522243 0xfc1c03)]

Use the --verbose option to enable dumping of all of the sample table related boxes/atoms.


 

 

 

Don't hesitate to contact us via our contact page or email us at openvcx@gmail.com.