Commit Graph
502 Commits
Author SHA1 Message Date
Anthony Minessale 9fdb6cd5ba FS-7519: support vb for video bitrate 2015-05-28 12:47:23 -05:00
Anthony Minessale dd3d6cbe76 FS-7519: increase default video buffer to 2mb in avformat and add vbuf file param to change it per file using a number of bytes with k or m modifier for kilobytes and megabytes 2015-05-28 12:47:20 -05:00
Seven Du 0ddfea1d1b FS-7500: refactor to support Alpha channel on core image, only ARGB & I420 are supported 2015-05-28 12:47:20 -05:00
Seven Du ecab16ed88 FS-7516: add mod_imagick
use the magick-core API
We have pdfs and gifs
auto play gif and png
yeah, you can play video files with imgk

video only
requires ffmpeg binary
need autoplay=(1000/FPS)
2015-05-28 12:47:18 -05:00
Anthony Minessale 3e24ac5e6b FS-7501: add auto sync of jb and fps detection 2015-05-28 12:47:18 -05:00
Seven Du 70953c868b FS-7512: add audio to png 2015-05-28 12:47:17 -05:00
Seven Du 8c56410d7f FS-7512: slow down in block mod 2015-05-28 12:47:17 -05:00
Anthony Minessale 755a0c0549 FS-7512: add mod_png to play a png as video defaults to 10 sec add {png_ms=N} to change (negative number is forever) 2015-05-28 12:47:16 -05:00
Anthony Minessale abd9867cf9 FS-7514: tweak vlc to ask for aac in mp4
don't start playing until the first read in vlc vid handles
use correct buffer len
Fixing typo. memset should zero out the whole struct
add some mutexes
fix locking issue on bad formatted input string
2015-05-28 12:47:15 -05:00
Anthony Minessale c13d4bcbbb FS-7514: add pkg-config checks for vlc 2015-05-28 12:47:15 -05:00
Anthony Minessale 026ae6945e FS-7519: cleanup on mod_avformat 2015-05-28 12:47:15 -05:00
Anthony Minessale 7c294f242f FS-7504: allow <modname>.<codecname> support so multiple modules can exist for the same codec 2015-05-28 12:47:13 -05:00
Anthony Minessale 52d15f6398 FS-7505: clean up and support multiple formats to same extensions {modname=mod_vlc}rtmp://foo.com/flvplayback also move [/tmp]file to be {spool_path=/tmp} 2015-05-28 12:47:13 -05:00
Seven Du ed62be70c3 FS-7519: WIP break mod_av into mod_avformat, moving to libav.org API
Tested with libav 11.3
./configure --prefix=/opt/av --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --host-cflags= --host-ldflags= --enable-libx264 --enable-libmp3lame --enable-libvorbis --enable-libvpx --enable-libfaac --enable-libspeex --enable-nonfree --enable-vda

WIP av file interface, kind of works, need further tweak & cleanup
2015-05-28 12:47:13 -05:00
Anthony Minessale 25dade86aa FS-7519: add pkg-config checks for avformat and avcodec and move modules to use automke 2015-05-28 12:47:13 -05:00
Anthony Minessale 697107547a add audio offset 2015-05-28 12:47:13 -05:00
Seven Du adbb197414 fix stereo 2015-05-28 12:47:12 -05:00
Seven Du bbfd9f7ef3 got webm working with mono, todo: stereo, syncing 2015-05-28 12:47:12 -05:00
Seven Du 29bddbd3fc WIP add experimental vorbis codec
made it like a codec mod so we can share the same code in case opus is fully supported in webm
add -lvorbis -lvorbisenc to Makefile
the audio is still completely silence, hope we can find out why
2015-05-28 12:47:12 -05:00
Seven Du 8d4686aee2 some refactors and make audio work with opus
use SWITCH_RTP_MAX_BUF_LEN for video
timestamp has to times 1000 or it too short
neither VLC nor Chrome plays it because they don't support OPUS,
but you can use `ffmpeg -i a.webm b.webm`
2015-05-28 12:47:12 -05:00
Anthony Minessale db31cc650e fix size 2015-05-28 12:47:12 -05:00
Seven Du 897ec20c99 WIP add mod_webm, video is working, audio is not 2015-05-28 12:47:12 -05:00
Anthony Minessale 39730182e5 FS-7514: add logging to vlc 2015-05-28 12:47:11 -05:00
Anthony Minessale 80fdf7a24c FS-7514: add sanity check for framing 2015-05-28 12:47:11 -05:00
Anthony Minessale 6db97cae7e FS-7514: add youtube stream name 2015-05-28 12:47:11 -05:00
Anthony Minessale bc09ade1a5 FS-7514: merge conflict from hell 2015-05-28 12:47:10 -05:00
Anthony Minessale dc2e4c42ca FS-7514: amend 2015-05-28 12:47:10 -05:00
Anthony Minessale bffdac0bb7 FS-7514: add file params to set some optimal settings from conference into recording handle and make streaming better 2015-05-28 12:47:10 -05:00
Seven Du 39bd8adbdc FS-7514: fix binary & 2015-05-28 12:47:10 -05:00
Anthony Minessale 41577304ad FS-7514: add write to rtmp transparent wrapper 2015-05-28 12:47:10 -05:00
Anthony Minessale 517a6d4ab7 FS-7503: add video read flags to choose flush and or block mode and add stuff to vlc so it can play youtube urls 2015-05-28 12:47:10 -05:00
Seven Du 9d635f57ef add MP3 codec interface 2015-05-28 12:47:10 -05:00
Anthony Minessale cd9dd44a16 FS-7514: reduce default 2015-05-28 12:47:09 -05:00
Anthony Minessale 8b47053915 FS-7514: drop extra frames 2015-05-28 12:47:09 -05:00
Anthony Minessale 0d34e8ac77 FS-7500: add a framebuffer to reuse memory and use it to offload frame writing from video muxing thread to a dedicated write thread 2015-05-28 12:47:08 -05:00
Anthony Minessale 5ac63b9250 FS-7514: pop only newest frame on video file read to keep sync 2015-05-28 12:47:08 -05:00
Anthony Minessale 9a7a33fb55 FS-7500: block in flag set for wait for video ready 2015-05-28 12:47:07 -05:00
Anthony Minessale 5b509a72ef FS-7505: train video a little in beginning and make play file wait for it to train 2015-05-28 12:47:07 -05:00
Anthony Minessale d5f67d46db FS-7514: typo 2015-05-28 12:47:07 -05:00
Anthony Minessale e13c7bc70e FS-7514: add m4v 2015-05-28 12:47:07 -05:00
Anthony Minessale c255ba7e8f FS-7514: work on sync a little more 2015-05-28 12:47:07 -05:00
Anthony Minessale baa3d9cd7c FS-7503 FS-7514 FS-7513: fix some buffering bugs in vlc and set mod_conference to match the rate and channels when calling vlc files 2015-05-28 12:47:06 -05:00
Anthony Minessale 36e754eed2 FS-7503: recording tweak 2015-05-28 12:47:06 -05:00
Anthony Minessale 780eef3fc1 FS-7514: add mov 2015-05-28 12:47:06 -05:00
Seven Du 455c20983f FS-7514: vlc endpoint stereo support, add vlc_rate and vlc_channels 2015-05-28 12:47:06 -05:00
Anthony Minessale 500b32b343 FS-7509 FS-7514: another round of cleanup 2015-05-28 12:47:06 -05:00
Anthony Minessale 59da14542f FS-7505 FS-7514: working towards vid rec 2015-05-28 12:47:06 -05:00
Anthony Minessale a42f40f938 FS-7514 FS-7505: clean up more from yesterday 2015-05-28 12:47:06 -05:00
Anthony Minessale a63dab7a4a FS-7503 FS-7514: A bunch of stuff:
Get filehandles working with video in some cases (if using vlc://):
    mod_conference for play and record video (will record the canvas in mix mode or floor holder in non-mix mode)
    regular playback app should be able to play vlc streams

Add no-minimize-encoding member flag so particilar memebers can opt out of that setting and still get their own encoded stream (for bw related needs)

TODO:

  mod_vlc is a mess.  Find a way to merge video_context and file_context.  They are very similar and they are intertwined and messy.
  Find out why vlc creates messed up mp4 files that don't play everywhere
  Get VLC so it can record aac, mp4x webm
2015-05-28 12:47:06 -05:00
Anthony Minessale 19d87c46fd FS-7514: sigh 2015-05-28 12:47:05 -05:00