72 Commits

Author SHA1 Message Date
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
9a7a33fb55 FS-7500: block in flag set for wait for video ready 2015-05-28 12:47:07 -05:00
Anthony Minessale
69fd32f8ef FS-7500: set decoded read mode 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
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
e14ad07a26 FS-7500: move function to core 2015-05-28 12:46:58 -05:00
Anthony Minessale
970064294c FS-7500: refactoring 2015-05-28 12:46:50 -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
Seven Du
5ce10274e1 FS-7500: use the new video function instead of start a new thread in record_fsv 2015-05-28 12:46:48 -05:00
Seven Du
ba43facf91 FS-7500: fix play_fsv for WebRTC 2015-05-28 12:46:48 -05:00
Anthony Minessale
c874fe05d8 FS-7500: SQUASH ME WITH THE LAST ONE 2015-05-28 12:46:47 -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
c584bf5511 FS-7500: reverse default for CF_VIDEO_ECHO to false and now it must be enabled when desired instead of disabled when not needed 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
a74b6f62a2 FS-7500: fix some of the debugging tools 2015-05-28 12:46:46 -05:00
Seven Du
55c5f1da1f FS-7500: fix decode_video App 2015-05-28 12:46:46 -05:00
Seven Du
3c7fc85a31 FS-7500: add more example yuv files 2015-05-28 12:46:46 -05:00
Anthony Minessale
1093139271 FS-7500: make play_yuv silent since opus echo tends to kill chrome 2015-05-28 12:46:45 -05:00
Seven Du
2d49b33002 FS-7500: fix follows the last refactor of core code 2015-05-28 12:46:45 -05:00
Anthony Minessale
0cd5658caa FS-7500: another refactoring pass, temp code still in place, WORK IN PROGRESS 2015-05-28 12:46:44 -05:00
Seven Du
3466a2e468 FS-7500: fix and use 32bit timestamp, frame->timestamp is defined as switch_size_t and not always 32bit 2015-05-28 12:46:43 -05:00
Seven Du
ea2f00b3d9 FS-7500: refactor to use switch_core_video
added switch_core_codec_encode_video and switch_core_codec_decode video and add separate video implementations
the switch_core_video code depends on libvpx, wraped into the switch_ namespace like switch_apr, need to figure out how to find the correct libvpx lib in autotools
2015-05-28 12:46:42 -05:00
Seven Du
71cafe536b FS-7500: add decode_video App 2015-05-28 12:46:42 -05:00
Seven Du
74d6db8809 FS-7514: refactor timestamp code 2015-05-28 12:46:42 -05:00
Seven Du
c9a13474a4 FS-7517: add play_yuv to test encoder 2015-05-28 12:46:42 -05:00
Seven Du
a7b6ef0888 FS-7500: [mod_fsv] fix fsv sample_count and mux of channels 2015-05-28 12:46:41 -05:00
Michael Jerris
bcd9f49fbe move applications to use automake 2014-03-07 18:36:12 -05:00
Ken Rice
6e7d5d0897 update copyright header for 2014 2014-02-12 12:08:56 -06:00
Peter Olsson
084e245085 Lots of trivial tweaks to minimize compiler warnings, especially on 64-bit platform: Added missing type casts, changed types, added missing NULL checks. 2014-01-22 22:30:23 +01:00
Seven Du
054225b80a refactor to use the new switch_core_session_refresh_video function 2013-09-10 01:52:21 +08:00
Nathan Neulinger
32adc789f6 make noexpandtab explicit in all vim modelines other than xml files 2013-06-25 11:50:17 -05:00
Anthony Minessale
2fac3a8e83 refactor some of the video passthru code 2013-06-17 19:52:37 -05:00
Anthony Minessale
4b3aa396fb fix some regessions and sync namespace of some vars 2013-03-31 21:27:25 -05:00
Stefan Knoblich
d311b4380e mod_fsv: Check audio/video frame size for possible buffer overflow and abort playback
Audio frame sizes were already being checked for overflow,
but video frame sizes were taken as-is, which would
lead to heap corruption.

In case an overflow has been detected, playback is aborted immediately as
there is no way we can ever recover from such a situation due to the lack
of a (well-known) frame header signature that could be used to skip over
the corrupted part of the streams.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
2013-01-21 23:27:23 +01:00
Jeff Lenk
dc2c11f13f FS-4768 initial add of vs2012 build support 2012-12-29 14:57:15 -06:00
Seven Du
14cb9af607 add switch_core_file_write_video
open a door to write video data
so it is possible to record a .fsv file
also possible to write to .mp4 with proper file format support
2012-07-20 11:38:20 +08:00
Seven Du
30c009b30e fsv file formate
audio only at this time
video is possible when add a file_write_video interface to core
only tested/working with 8000hz at this time
2012-07-20 11:06:48 +08:00
Seven Du
5a0d9514db set marker and ts, some endpoints depending on the marker bit to render correct video 2012-07-15 18:48:51 +08:00
Anthony Minessale
f5fe8bc5f6 close fd on fsv_record 2012-07-12 14:03:19 -05:00
Ken Rice
c5554eb939 Copyright date update. 2012-04-18 11:52:02 -05:00
Anthony Minessale
67f559685f req vid refresh in fsv 2012-01-18 14:08:55 -06:00
Anthony Minessale
c358f67fe4 eat inbound vid while playing fsv files 2012-01-17 12:19:31 -06:00
Anthony Minessale
a405b779c9 FS-3319 --resolve 2011-05-27 19:14:00 -05:00
Brian West
3734f4cd44 bump copyright date and fix some email and typos from diego. 2011-01-05 10:09:04 -06:00
Jeff Lenk
a87429ac87 Add initial support for VS2010 2010-06-28 15:49:19 -05:00
Anthony Minessale
c0f0a6c311 wait for video before recording in mod_fsv but have a 30 sec timeout
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@17104 d0543943-73ff-0310-b7d9-9358b9ac24b2
2010-03-25 19:08:00 +00:00
Anthony Minessale
8e09dab3ac wait for video before recording in mod_fsv
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@17103 d0543943-73ff-0310-b7d9-9358b9ac24b2
2010-03-25 19:06:18 +00:00
Anthony Minessale
886e1ddb4d run indent on the whole tree and update copyright dates in prep for 1.0.5
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16579 d0543943-73ff-0310-b7d9-9358b9ac24b2
2010-02-06 03:38:24 +00:00
Anthony Minessale
34866da82e fix fsv bug
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16198 d0543943-73ff-0310-b7d9-9358b9ac24b2
2010-01-07 16:40:38 +00:00
Mathieu Rene
5acb8ad899 Per-call logging, part two
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@14510 d0543943-73ff-0310-b7d9-9358b9ac24b2
2009-08-13 21:24:51 +00:00