Commit Graph
2209 Commits
Author SHA1 Message Date
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 4bcc6e6d64 FS-7503 FS-7514: First crack at recording mp4 <action application="capture_video" data="vlc://#transcode{vcodec=h264,acodec=mp3}:std{access=file,mux=mp4,dst=/var/www/sounds/file.mp4}"/> 2015-05-28 12:47:05 -05:00
Anthony Minessale 93db69ed03 FS-7500: can't use stristr for this 2015-05-28 12:47:04 -05:00
Anthony Minessale 628edd1183 FS-7513: add code to track media direction to avoid assigning floor or video layers to those with no signal 2015-05-28 12:47:03 -05:00
Anthony Minessale 2c4c2587ed FS-7513 FS-7509: crack at screen share 2015-05-28 12:47:03 -05:00
Seven Du e02ff26569 FS-7500: libpng 1.6.0 has much simpler APIs, also add a new switch_img_patch_png to possible patch a transparent png to an img
While this is not optimal, we should cache the png:
1) cache the whole buffer, with comes with RGBARGBA pixel formats
2) Allow switch_image_t to be other formats e.g. VPX_IMG_FMT_ARGB, VPX_IMG_FMT_ARGB_LE, or VPX_IMG_FMT_444A
   those can have alpha channels so we can check the alpha channel before we patch

Note all PNG are created equel, or maybe a bug in libpng since for some PNG files with alpha the returned buffer
     not seems like RGBARGBA... while docs says it should default be RGBA
2015-05-28 12:47:02 -05:00
Anthony Minessale e65f6bd604 FS-7513: add logo func and positioning param and vid snapshot 2015-05-28 12:47:02 -05:00
Anthony Minessale 2c1ab14074 FS-7513: add configurable FPS for conf and default to 15 2015-05-28 12:47:02 -05:00
Seven Du 84a1f5f642 FS-7500: add overlay func 2015-05-28 12:47:02 -05:00
Seven Du c70e8cf216 FS-7500: add yuv2rgb 2015-05-28 12:47:01 -05:00
Anthony Minessale 1faf602251 FS-7513: basic logo 2015-05-28 12:47:01 -05:00
Anthony Minessale 521a97935e FS-7500: check in png code and put it in the core to mature 2015-05-28 12:47:00 -05:00
Seven Du 90ea86bc95 FS-7506 FS-7513: refactor with rgb color space to support anti aliasing 2015-05-28 12:47:00 -05:00
Anthony Minessale 0697db4fb4 FS-7506 FS-7513: set banner with video_banner_text variable set before calling in, NEEDS DOCS params are parsable inside a {} string 2015-05-28 12:46:59 -05:00
Seven Du 9d7eef28e6 FS-7500 FS-7513: add and use switch_img_fill 2015-05-28 12:46:59 -05:00
Seven Du c857be4547 FS-7506: improve draw_text with minimum anti aliasing 2015-05-28 12:46:59 -05:00
Seven Du 0f28311b17 FS-7506 FS-7513: refactor switch color and implement draw_text in mod_conference 2015-05-28 12:46:59 -05:00
Anthony Minessale 1aa66ef30a FS-7513: do layers in order and reset when attaching 2015-05-28 12:46:58 -05:00
Anthony Minessale fcf32fd53d FS-7500 FS-7513: add video bandwidth control function and use it in mod_conference 2015-05-28 12:46:58 -05:00
Anthony Minessale e14ad07a26 FS-7500: move function to core 2015-05-28 12:46:58 -05:00
Anthony Minessale f7fb5fbff3 FS-7500: forgot one 2015-05-28 12:46:58 -05:00
Anthony Minessale 1bb8c0a8fc FS-7500: fix signed error 2015-05-28 12:46:58 -05:00
Anthony Minessale a56e65bace FS-7513: add flag to choose between encoding each frame and using central encoder per codec, add parsing for floor fields and reservation fields in layouts, add param to control bandwidth for consolidated codecs, add audio-position attr to images in layout to sync with virtual HRTF 2015-05-28 12:46:58 -05:00
Anthony Minessale fa5d6af2cd FS-7513: refactor conference video muxing to create one distinct encoder per codec used and only create one encoded frame per distinct codec, store current image used by layer on the layer so it is not destroyed before the canvas is written, refactor and rearrange some functions 2015-05-28 12:46:57 -05:00
Anthony Minessale 1061aef9fa FS-7500: convert more to typedef to avoid warnings and build problems 2015-05-28 12:46:56 -05:00
Anthony Minessale 13c3f053ab FS-7500: use the vpx_image_t from the installed header file to prevent mismatch 2015-05-28 12:46:56 -05:00
Anthony Minessale 4d100bc2e8 FS-7509: stop media on verto detach 2015-05-28 12:46:55 -05:00
Anthony Minessale 982d05c30c FS-7501: fix vid buffer reset 2015-05-28 12:46:55 -05:00
Seven Du c52d69d173 FS-7500: add switch_img_copy to clone an image 2015-05-28 12:46:54 -05:00
Anthony Minessale a69938c3d5 FS-7500: factor back in video_thread callback and move it to the video_read_frame 2015-05-28 12:46:53 -05:00
Anthony Minessale bc24e0f28a support AVPF too 2015-05-28 12:46:53 -05:00
Anthony Minessale 17aa836403 FS-7499: add generic nack support to rtp stack 2015-05-28 12:46:53 -05:00
Anthony Minessale 836e2b2888 FS-7500: add switch_inthash variety of hash that can key on int 2015-05-28 12:46:53 -05:00
Anthony Minessale 0d626bc715 FS-7501: more factoring on vid buffer 2015-05-28 12:46:52 -05:00
Anthony Minessale 0e991e7d0f FS-7501: connect video buffer for testing, still needs a lot of work 2015-05-28 12:46:52 -05:00
Anthony Minessale 2a50c6d55c FS-7501: use vidderbuffer in rtp 2015-05-28 12:46:52 -05:00
Anthony Minessale 7b323f0b17 FS-7501: add vidderbuffer 2015-05-28 12:46:52 -05:00
Seven Du a50789f97f FS-7499: magic number to macro 2015-05-28 12:46:52 -05:00
Anthony Minessale 76ec99ed97 FS-7500: poll rtp on answer until dtls is negotiated 2015-05-28 12:46:51 -05:00
Anthony Minessale 303a4ecf99 FS-7499: move fir and pli into the normal rtcp code so it can be bundled with a report block per the rfc 2015-05-28 12:46:51 -05:00
Anthony Minessale be21d4f28f FS-7500: use unsigned int for frame->timestamp 2015-05-28 12:46:50 -05:00
Anthony Minessale 970064294c FS-7500: refactoring 2015-05-28 12:46:50 -05:00
Anthony Minessale 2ea12656ea FS-7500: improvement for conf vid 2015-05-28 12:46:49 -05:00
Anthony Minessale 853873725b FS-7500: factor out the write_image callback and fix the vlc video endpoint to setup and match the audio params of the A leg when bridged 2015-05-28 12:46:48 -05:00
Anthony Minessale 01fda5748c FS-7500: another round of trying to make things work 2015-05-28 12:46:48 -05:00
Anthony Minessale b90d24a05f FS-7513: fix video switching in conference 2015-05-28 12:46:48 -05:00
Anthony Minessale b8ba1a1469 FS-7500: reduce CNG frames on video and move debug from mod_fsv to the core with a flag to enable it since the raw packet is not available anymore when you set DECODED READ flag 2015-05-28 12:46:47 -05:00
Anthony Minessale 4dc155f164 FS-7500: add switch_core_session_raw_read to put session into raw read mode without needing a local codec var (WE SHOULD REFACTOR MUCH OF switch_ivr_* to use this...) and add echo_decode_audio option to echo app 2015-05-28 12:46:47 -05:00
Anthony Minessale e7d34f3170 FS-7508: tolerate some messed up packets a little more 2015-05-28 12:46:45 -05:00