Commit Graph

18189 Commits

Author SHA1 Message Date
Chris Rienzo d04e1f03ff FS-7564 #resolve #comment [mod_rayo] Added new algorithms for offering calls to clients.
Two new params added to autoload_configs/rayo.conf.xml
     offer-algorithm
       all: offer to all clients (default and old behavior)
       first: offer to first client, fails over to next client in list
       random: offer to random client, fails over to next random client

     offer-timeout-ms
       0: disable
       > 0 and < 120000: time to wait for reply from offer.  On timeout, next client is offered call.
                         If no other clients available, call is rejected.  5000 is default.
2015-06-02 10:54:38 -04:00
Seven Du 6bfa299216 set affected_rows also for non-SELECT queries 2015-06-02 18:46:50 +08:00
Moises Silva 3df55b9bb5 Add sip_watched_headers variable to launch events when a SIP message contains a given SIP header
FS-6801 #resolve
2015-06-02 00:47:18 -04:00
doancea 8392366057 Fixed encoded_data_len for MODE 2400, it should be 6 bytes. Also replaced 2550 bps bitrate (obsoleted operation mode) by 2400 2015-06-02 01:44:15 +02:00
Mike Jerris 12504aa210 Merge pull request #99 in FS/freeswitch from ~BRIAN/freeswitch-brian:bugfix/FS-6961-mod_erlang_event-add-call-uuid-to to master
* commit '89f3f5e2986d24800e40064f9966675389f5f8a0':
  FS-6961: [mod_erlang_event]: Add call UUID to call_hangup message
2015-06-01 16:32:11 -05:00
Michael Jerris 651c312a75 FS-7499: fix build error on 32bit platforms 2015-06-01 15:28:33 -04:00
Mike Jerris 6323803353 Merge pull request #262 in FS/freeswitch from feature/FS-7587-add-ipv6-support-to-verto-websockets to master
* commit '3b2d00f3e65061393da10a4ba286ac72cdb3c16e':
  FS-7587 Add ipv6 support to Verto / Websockets
2015-06-01 14:19:40 -05:00
Mike Jerris a564f5c71e Merge pull request #248 in FS/freeswitch from ~ANDEE/freeswitch-nibble:master to master
* commit '8f343939dc7f63f6a1686941e7d34e1cbf27a1c3':
  Added new options to nibble bill for minimum charges and rounding #FS-7560
2015-06-01 14:13:09 -05:00
Luis Azedo e12608bd11 FS-7463 #resolve
allow intercept of replaced call-id when processing the replaces header by providing a a-leg parameter in replaces header.
without this change one leg calls could not be picked because there is no bridge_uuid
2015-06-01 20:11:40 +01:00
Mike Jerris 641fc1f18e Merge pull request #169 in FS/freeswitch from ~FRANCOIS/freeswitch-fs-7204:master to master
* commit '441dd9128862ce741a56a01acfa3e862949d1347':
  FS-7204, Allow to force a per-account send-message-query-on-register
2015-06-01 13:54:15 -05:00
Mike Jerris bbad395866 Merge pull request #174 in FS/freeswitch from ~FLAVIO/freeswitch:origin/bugfix/FS-7196 to master
* commit 'f135232ef5ab3f53f76cfa8ec2a1225f7700de90':
  FS-7196: add recording_follow_transfer support for semi attended transfers
2015-06-01 13:52:05 -05:00
Anthony Minessale 3b2d00f3e6 FS-7587 Add ipv6 support to Verto / Websockets 2015-06-01 13:39:47 -05:00
Andrew Cassidy 8f343939dc Added new options to nibble bill for minimum charges and rounding #FS-7560
These options are:

1) nibble_rounding: The number of decimal places to round the cost of the call to
2) nibble_minimum: The minimum charge to apply to a call

Rounding is applied before the minimum charging, and these steps only occur at call end to make sure they're accurate.

Checks for minimum_charge before call starts

"Billing done" flag to the data struct, and used that to exit early in the event processing during hangup has already occured.
2015-06-01 19:39:03 +01:00
Mike Jerris 89f838e020 Merge pull request #230 in FS/freeswitch from bugfix/FS-7405 to master
* commit 'a4ef9d6ba3d210cb0589342a0e059cf9bca98ae7':
  FS-7405: if all is required don't pass if total ne pass
2015-06-01 13:25:47 -05:00
Mike Jerris bd02432d03 Merge pull request #232 in FS/freeswitch from ~ITALOROSSI/freeswitch:bugfix/FS-7242-delayed-bye-after-REFER to master
* commit 'beeea0172411f6274effdac8b90f970fa317b159':
  FS-7242 Waiting for state CS_PARK when receiving REFER.
2015-06-01 13:10:43 -05:00
Mike Jerris 37d8ce6185 Merge pull request #239 in FS/freeswitch from ~MOY/freeswitch:park-before-media to master
* commit 'b4250c87a53310d934052ef2226b9a5983ff9e6f':
  Fix switch_ivr_parse_event() to not hangup a session when there is no media yet
2015-06-01 13:03:37 -05:00
William King 4a623c45b5 Merge pull request #231 in FS/freeswitch from ~SEKIL/freeswitch-7412:master to master
* commit 'f5e0a879b2c5e035075db2c9441a111020575dea':
  JIRA FS-7412. Added new LDAP schema (fsaccount.schema) with relevant attributes to match FS directory params and variables. Changed mod_xml_ldap code to reflect new schema. Updated xml_ldap.conf.xml as well to reflect mapping of new attributes.
2015-06-01 12:46:41 -05:00
Nathan Neulinger d7a1f3d424 FS-7593 --resolve add locking keyed on device name around any database updates adding/removing the device 2015-06-01 12:45:19 -05:00
doancea 8d98bc27ef FS-7462: fix FMTP in the INVITE - make it use values from opus.conf.xml 2015-06-01 12:45:19 -05:00
Anthony Minessale 3702ce5a8e squash 2015-06-01 12:45:19 -05:00
Anthony Minessale f82dd1e9ea FS-7513 add video-auto-floor-msec param to control how long a member must have the audio floor before also taking the video floor %NEEDS_DOC 2015-06-01 12:25:13 -05:00
Michael Jerris f792f9de9e FS-7570: fix status variable reference that is breaking compile w/ zrtp enabled 2015-06-01 12:25:13 -05:00
Artur Zaprzała 0c4f85111f FS-7337: Add support for Remote-Party-ID header in UPDATE request. 2015-06-01 12:25:13 -05:00
Brian 8131f210b3 FS-7579 --resolve 2015-06-01 09:16:25 -05:00
Seven Du 55a955787c disable debug log 2015-05-30 06:40:47 +08:00
Seven Du 5da76480ba detect more deep too see if we should offer video 2015-05-30 06:36:54 +08:00
Seven Du 8adca82644 FS-7585 detect packet loss where possible 2015-05-29 12:16:54 +08:00
Seven Du 721c9c9989 CID:1300973 fix copy & paste err 2015-05-29 12:14:06 +08:00
Seven Du 81ad7562a3 CID:1301050 fix possible NULL 2015-05-29 12:12:07 +08:00
Seven Du 55462887e8 CID:1301065 fix possible NULL 2015-05-29 12:11:01 +08:00
Seven Du 47f88e920d CID:1301106 fix logically dead code 2015-05-29 12:10:29 +08:00
Seven Du e46ae6c77d CID:1025061 add missing break 2015-05-29 12:09:27 +08:00
Seven Du 6c61fd195b CID:1301110 CID:1301110 logically dead code 2015-05-29 12:08:46 +08:00
Anthony Minessale 8e37e9b4d4 FS-7513 flush video on video mute/unmute 2015-05-28 21:05:56 -05:00
Seven Du 143c1eb504 FS-7519: CID:1294454 fix leak 2015-05-28 12:47:35 -05:00
Michael Jerris 4dfbbc6742 CID:1301145,1301144: Bit shift bounds checking 2015-05-28 12:47:35 -05:00
William King cdead84d3b CID 1216601 Fix a possible memory leak in mod_basic 2015-05-28 12:47:34 -05:00
Anthony Minessale 3e93e9f5b4 FS-7519 mod_av cleanup and refactor to work on higher resolution 2015-05-28 12:47:34 -05:00
Anthony Minessale 76fc6940df FS-7513 refactor 2015-05-28 12:47:34 -05:00
Anthony Minessale 2188358832 FS-7500 FS-7499 refactoring while battling chrome 2015-05-28 12:47:34 -05:00
Seven Du 0c819da6f5 FS-7585: add rtmp video support 2015-05-28 12:47:34 -05:00
Seven Du e187479784 FS-7585: spaces to tabs and clean up trilling spaces 2015-05-28 12:47:34 -05:00
William King 2eda7eb3c3 FS-7519: reverting part of f85a86e64d3ebcd34d63bc6239694e5a524760a1 2015-05-28 12:47:34 -05:00
William King 7b1bc2e604 FS-7519: fix build issue with clang-3.5 2015-05-28 12:47:34 -05:00
Anthony Minessale dc2e98e536 FS-7500: start media thread one answer/pre_answer 2015-05-28 12:47:34 -05:00
Anthony Minessale d8242cbf42 FS-7519: fix typo 2015-05-28 12:47:34 -05:00
Anthony Minessale 40484fce58 FS-7499 FS-7500 mods for interop against latest chrome builds 2015-05-28 12:47:34 -05:00
Anthony Minessale abd6943cf5 FS-7500 just send refresh and not full reset on uuid_video_refresh 2015-05-28 12:47:33 -05:00
Anthony Minessale 817d98e7b6 FS-7513 mods to bandwidth sizing and remove flush calls 2015-05-28 12:47:33 -05:00
Anthony Minessale 700a18ae6b FS-7519: auto set some values on avformat recording 2015-05-28 12:47:33 -05:00
Anthony Minessale e8fed1a47f FS-7519: merge mod_avcodec and mod_avformat into mod_av 2015-05-28 12:47:33 -05:00
Michael Jerris fe50da3d8c FS-7507: fix expansion of dirs compiled into freeswitch 2015-05-28 12:47:33 -05:00
Seven Du 2ac8f888f7 FS-7519: refactor and the av code should work now use it as default, bandwidth might be not accurate need furthur tweak 2015-05-28 12:47:33 -05:00
Anthony Minessale 70ec967ec9 FS-7513 FS-7499 mod auto-bitrate code 2015-05-28 12:47:33 -05:00
Anthony Minessale 588d5c63cb FS-7500: [rtp] up debug to higher level 2015-05-28 12:47:33 -05:00
Anthony Minessale 09ede13fc4 FS-7500 add switch_img_letterbox and use it for the mirror input function 2015-05-28 12:47:33 -05:00
Mike Jerris 387b405ccd FS-7500: fix include paths for libvpx 2015-05-28 12:47:32 -05:00
Seven Du 79741a307d FS-7519: add fs_avc_find_startcode 2015-05-28 12:47:32 -05:00
Anthony Minessale 3e1b5cf355 FS-7519: fix build 2015-05-28 12:47:32 -05:00
Anthony Minessale 2af024dc08 FS-7519: [mod_avformat] change logger, mod_avcodec: change logger and copy data to/from frames to avoid overwriting and also send intra requests still but do not wait for one to init the codec 2015-05-28 12:47:32 -05:00
Michael Jerris b827542c8d FS-7500: fix vpx include paths 2015-05-28 12:47:32 -05:00
Anthony Minessale a8c1341f42 FS-7499 add tmmbr negotiation to sdp 2015-05-28 12:47:32 -05:00
Seven Du 8e1dc361e0 FS-7550 quick and dirty tweak for overlay, maybe need furthur tweaks but this should work with most transparent pngs 2015-05-28 12:47:32 -05:00
Anthony Minessale 81ef7703bd FS-7500: add video_write_overlay and stop_video_write_overlay
Use it to add an image to the write stream to see a recording banner on video echoed back to you during recording.
ARGS: <file> [<position>] [<opacity 0-255>]

POSITIONS:
left-top
left-mid
left-bot
center-top
center-mid
center-bot
right-top
right-mid
right-bot

<extension name="example">
  <condition field="destination_number" expression="^overlay$">
    <action application="answer"/>
    <action application="video_write_overlay" data="/path/to/img.png"/>
    <action application="record" data="/data/file.mp4"/>
    <action application="stop_video_write_overlay"/>
   </condition>
</extension>
2015-05-28 12:47:32 -05:00
Anthony Minessale e8f2366bdf FS-7513 drop bw if there are frequent dropouts 2015-05-28 12:47:32 -05:00
Anthony Minessale 495619f248 FS-7513 improve auto bandwidth feature and add other performance improvemnts related to dropping video when its not visible 2015-05-28 12:47:32 -05:00
Anthony Minessale 6be0e0809d FS-7501 add vbsize to mod video buffer size 2015-05-28 12:47:32 -05:00
Anthony Minessale b95390cba4 FS-7513 add manage-inbound-video-bitrate conference flag 2015-05-28 12:47:31 -05:00
Anthony Minessale 4e141d0e51 FS-7513 favor moderators for selection of open layers in the canvas 2015-05-28 12:47:31 -05:00
Anthony Minessale 9e07bfb23d FS-7499 some mods to relad/recover in rtp. Killing dtls here might be unsafe and isn't necessary anyway 2015-05-28 12:47:31 -05:00
Anthony Minessale 81094b3a0c FS-7499 adding some more refactoring towards better rtcp 2015-05-28 12:47:31 -05:00
Seven Du 930d8aea39 FS-7550 starting to and libgd to core video 2015-05-28 12:47:31 -05:00
Anthony Minessale 4a76c0f8c6 FS-7499 second pass at adding TMMBR (WIP) 2015-05-28 12:47:31 -05:00
Anthony Minessale 0fd7824a12 FS-7500: send a few intra requests in decode_video 2015-05-28 12:47:31 -05:00
Anthony Minessale bc152ed9d8 FS-7500: set 500ms min on retransmit of outdated xml based intraframe request that EVERYTHING still seems to use 2015-05-28 12:47:31 -05:00
Anthony Minessale 22ade18600 FS-7519: add abndwidth params and fix issue on reset of mov_avcodec 2015-05-28 12:47:31 -05:00
Anthony Minessale 593bd56bc6 FS-7499 revert 8a3b020be2d811e0b15008460f00cc32adcf9d51 2015-05-28 12:47:31 -05:00
Anthony Minessale ea16f82d20 FS-7500: move img test down into read function 2015-05-28 12:47:31 -05:00
Anthony Minessale ff8bf014cf FS-7500: change variable names to reflect audio vs video %NEEDS_DOC
remote_media_ip_reported => remote_audio_ip_reported and remote_video_ip_reported
new vars remote_audio_ip and remote_video_ip like remote_media_ip but specific to audio and video
remote_media_port_reported => remote_audio_port_reported and remote_audio_port_reported
remote_media_port => remote_audio_port and remote_video_port
rtp_auto_adjust => rtp_auto_adjust_audio and rtp_auto_adjust_video
2015-05-28 12:47:30 -05:00
Anthony Minessale d253f74e48 FS-7501: flush video on jb activate/reset 2015-05-28 12:47:30 -05:00
Anthony Minessale a08a89af3d FS-7500: re-enable sip info video refresh 2015-05-28 12:47:30 -05:00
Anthony Minessale 4287aeee76 FS-7499 fix some refactor-related regressions in rtcp 2015-05-28 12:47:30 -05:00
Anthony Minessale d6cdacc063 FS-7499 fix regression from a00be7c3435baac3454378044b3f76b4ce164935 2015-05-28 12:47:30 -05:00
Seven Du 4b8f40d28e FS-7506 add alpha channel to switch_rgb_color_t so it is possible to make transparent text img 2015-05-28 12:47:30 -05:00
Seven Du 8787ccd5a5 FS-7506 refactor to use rgb color for pixel 2015-05-28 12:47:30 -05:00
Seven Du f0b42410a3 FS-7506 improve anti-aliasing when use a NULL bgcolor for transparent text 2015-05-28 12:47:30 -05:00
Anthony Minessale 7077d9b148 FS-7513 move some locking around 2015-05-28 12:47:30 -05:00
Anthony Minessale 3b7d07d0a1 FS-7513: don't patch image on mute 2015-05-28 12:47:30 -05:00
Anthony Minessale 6388926291 FS-7499: start of tmmbr/n 2015-05-28 12:47:30 -05:00
Anthony Minessale 3e33920657 FS-7513 fix all video mute related issues 2015-05-28 12:47:30 -05:00
Anthony Minessale 22ec9c378e FS-7499 FS-7513 video mute the old way seems to break chrome when resuming, add some improvements to mitigate 2015-05-28 12:47:30 -05:00
Anthony Minessale 772665e0fa FS-7499 FS-7500 FS-7508 FS-7513 trying to improve the video signal decoding under stress and get vpx to latch on to a signale sooner 2015-05-28 12:47:29 -05:00
Anthony Minessale 02cac73d37 FS-7499 FS-7513 try to avoid storm of refreshes in heavy usage 2015-05-28 12:47:29 -05:00
Anthony Minessale dc4c38dab5 FS-7499 FS-7508 FS-7501 some more general improvements for initial call setup 2015-05-28 12:47:29 -05:00
Anthony Minessale 272108f0b3 FS-7499 fix ssrc and rtcp negotiation and parsing irregularities caused by ice/rtcp mux 2015-05-28 12:47:29 -05:00
Anthony Minessale e7fa32a781 FS-7499 prefer FIR over PLI when both are present 2015-05-28 12:47:29 -05:00
Anthony Minessale e1ebd3b62b FS-7432 #resolve 2015-05-28 12:47:29 -05:00
Seven Du bfecc842df FS-7500: switch_img_overlay now support ARGB and negtive position, also change alpha value to match doc description 2015-05-28 12:47:29 -05:00
Seven Du 72db8c58d1 FS-7519: av play support block and no block mode, support audio only mode 2015-05-28 12:47:29 -05:00
Michael Jerris 49f42542c6 FS-7519: [mod_avformat] fix ffmpeg symbol collision 2015-05-28 12:47:29 -05:00
Michael Jerris d2d00056e8 FS-7519: [mod_avcodec] add x264 to linker 2015-05-28 12:47:29 -05:00
Michael Jerris 5220c91395 FS-7519: [mod_avcodec] add libavutil to linker 2015-05-28 12:47:29 -05:00
Seven Du 319f09c98b FS-7519: this works on both Mac and debian 2015-05-28 12:47:28 -05:00
Seven Du 321dddc478 FS-7519: [mod_avformat] fix debian build 2015-05-28 12:47:28 -05:00
Michael Jerris a6c1a40b2a FS-7519: [mod_avformat] add libavutil and libavresample to linking deps 2015-05-28 12:47:28 -05:00
Michael Jerris f87f725e43 FS-7519: [mod_avformat] add libswscale and libavcodec to linking deps 2015-05-28 12:47:28 -05:00
Seven Du b29174e822 FS-7503 FS-7519: refactor to support video playback using libavformat
need -lswscale to converto from non-I420 fmt to I420
2015-05-28 12:47:28 -05:00
Anthony Minessale a8a2c32ac3 FS-7499 FS-7500: combat black screen disease 2015-05-28 12:47:28 -05:00
Brian West 23e0062bc7 FS-7500: increase buffer size 2015-05-28 12:47:28 -05:00
Brian West cbce680f1c FS-7513: fix seg 2015-05-28 12:47:28 -05:00
Anthony Minessale 5e7a8ea76d FS-7515: txt len 2015-05-28 12:47:28 -05:00
Anthony Minessale 669d971010 FS-7513: final touches 2015-05-28 12:47:28 -05:00
Anthony Minessale 0ca23ab617 FS-7513: prefer avatar img over mute and reset layer bg on patch of blanked mode 2015-05-28 12:47:28 -05:00
Anthony Minessale ed866593a7 FS-7513: blank to mute img on 2 sec with no video 2015-05-28 12:47:27 -05:00
Anthony Minessale b5b3e58026 FS-7513: refactor main thread a little 2015-05-28 12:47:27 -05:00
Anthony Minessale d1e466e76d FS-7500: clock in 15fps for now 2015-05-28 12:47:27 -05:00
Anthony Minessale 62f3feca98 FS-7513: set video pause resume when video is paused in conference 2015-05-28 12:47:27 -05:00
Anthony Minessale 33d9b8066b FS-7500: return cng frames when waiting for a key 2015-05-28 12:47:27 -05:00
Anthony Minessale 01a5756701 FS-7508: revert 2015-05-28 12:47:27 -05:00
Michael Jerris 58d02f98a6 quiet down some verbose debug logging 2015-05-28 12:47:27 -05:00
Anthony Minessale 38a7006f0e FS-7508: sync vpx on start packet 2015-05-28 12:47:26 -05:00
Anthony Minessale 59bcb42092 FS-7513: show logo img when video muted 2015-05-28 12:47:26 -05:00
Anthony Minessale 86a1ef3d27 FS-7513: exit if layer->cur_img not secured 2015-05-28 12:47:26 -05:00
Anthony Minessale 66f9f985a8 FS-7500: fix stat checking logic on video packets 2015-05-28 12:47:26 -05:00
Michael Jerris d376150e0e FS-7488: [mod_managed] fix build error and enable on debina packages 2015-05-28 12:47:26 -05:00
Brian West 3b00832e50 FS-7482 --resolve 2015-05-28 12:47:26 -05:00
Anthony Minessale 2cb00153e2 FS-7513: add fps returned when one is not specified and add 20fps setting 2015-05-28 12:47:26 -05:00
Anthony Minessale 5ab557fd51 FS-7509: add userVariables parser to initial connection all variables set in this obj will be set on every inbound call 2015-05-28 12:47:25 -05:00
Anthony Minessale 22a4a4dd7e FS-7500: set default bandwidth to 1mb 2015-05-28 12:47:25 -05:00
Michael Jerris 8d30c18c5a fix clang build 2015-05-28 12:47:25 -05:00
Anthony Minessale c517be4330 FS-7513: fix placement of overlay banner on letterbox callers change config option video-layout-bgcolor to video-letterbox-bgcolor 2015-05-28 12:47:25 -05:00
Michael Jerris e2236ad559 FS-7508: remove mod_vp8 which has been replaced by mod_vpx 2015-05-28 12:47:25 -05:00
Michael Jerris 6c45fb9eec fix error building with newer compilers 2015-05-28 12:47:25 -05:00
Michael Jerris b7e811a628 CID:1271537: error check for malformed json better 2015-05-28 12:47:25 -05:00
Michael Jerris ead0e2ebd1 CID:1222597: silence incorrect coverity warning about out of bounds read 2015-05-28 12:47:25 -05:00
Michael Jerris c61be91316 CID:1294463,1294540: clean up duplicate error checking code 2015-05-28 12:47:25 -05:00
Michael Jerris c7709a191b CID-1294436: handle null file paths to switch_is_file_path correctly 2015-05-28 12:47:25 -05:00
Michael Jerris 91a6fc82c0 FS-7338: remove libsndfile from tree, use system lib instead
FS-7338: remove libsilk from tree, use system lib instead
FS-7338: change to always use system liblua
FS-7338: remove libbroadvoice from tree, use system lib instead
FS-7338: remove libilbc from tree, use system lib instead
FS-7338: remove libs using system libs from bootstrap
FS-7338: remove libg722_1 from tree, use system lib instead
FS-7338: remove mod_celt, it has be superseded by mod_opus
FS-7338: remove libcodec2 from tree, use system lib instead
FS-7338: remove libopus from tree, use system lib instead
FS-7338: remove libsoundtouch build from tree, use system lib instead
FS-7338: remove flite build from tree, use system lib instead
FS-7338: remove openldap build from tree, use system lib instead
FS-7338: remove libmongoc build from tree, use system lib instead
FS-7338: remove mod_mongo deps that are no longer actually required
FS-7338: remove some dup demo modules and don't include demo code in packages
2015-05-28 12:47:24 -05:00
Brian a4f656f414 FS-7297 Not sure anyone tested this 2015-05-28 12:47:24 -05:00
William King 5a94bfefd3 Build fix: updated to better support new video changes 2015-05-28 12:47:24 -05:00
Anthony Minessale 7eebd8e7e8 FS-7513: turn avatar on and off if video is added mid call 2015-05-28 12:47:24 -05:00
Anthony Minessale 7d5b0acc90 FS-7502: add patch level for media bugs to call them as needed 2015-05-28 12:47:24 -05:00
Anthony Minessale 8234dadcaf FS-7513: skip patching logo when video muted 2015-05-28 12:47:24 -05:00
Michael Jerris 3205546bcb CID:1210582: remove logically dead code 2015-05-28 12:47:24 -05:00
Michael Jerris 1550d548db CID:1024555: remove logically dead code 2015-05-28 12:47:24 -05:00
Michael Jerris 6ddf5a1bdf CID:1294501: possible null deref 2015-05-28 12:47:24 -05:00
Michael Jerris d44ea400d5 CID:1294424: remove redundant unused code 2015-05-28 12:47:24 -05:00
Michael Jerris f2f03cffc3 CID:1024564: remove unnecessary check 2015-05-28 12:47:24 -05:00
Michael Jerris 4662118ca8 CID:1294504: make sure to check for NULL frame 2015-05-28 12:47:24 -05:00
Michael Jerris 6dcff0a79a CID:1294431: make sure not to check uninitialized value 2015-05-28 12:47:24 -05:00
Michael Jerris 35be8a16e9 CID:1024241: clean up null checking on var that can never be null anyways 2015-05-28 12:47:23 -05:00
Michael Jerris 200199e05f CID:1023990: remove unused code 2015-05-28 12:47:23 -05:00
Seven Du 57016a7926 FS-7500: refactor and implemnt patch_rect
fix stride side when patching strided img
implement switch_img_patch_rect to patch partial of an img to a bigger IMG
refactor switch_img_copy_rect to support ARGB
2015-05-28 12:47:23 -05:00
Anthony Minessale 80694ad547 FS-7519: avformat tweaks for broadcast 2015-05-28 12:47:23 -05:00
Anthony Minessale 4b9b004403 FS-7513: add text to video logo in mod_conference 2015-05-28 12:47:23 -05:00
Michael Jerris b78aac6196 FS-7456: also more complete fix for FS-7440, handle sdp with m lines in any order 2015-05-28 12:47:23 -05:00
Seven Du 47f25e9d43 FS-7508: log vpx version 2015-05-28 12:47:23 -05:00
Anthony Minessale 9fdb6cd5ba FS-7519: support vb for video bitrate 2015-05-28 12:47:23 -05:00
Anthony Minessale 2a36066ea0 FS-7500: make 15fps the min detected speed 2015-05-28 12:47:23 -05:00
Anthony Minessale ad20119652 FS-7503: add vb param for vid bitrate 2015-05-28 12:47:23 -05:00
Anthony Minessale 4a7418dca5 FS-7508: this setting no longer needs to be mult by 4 in recent vpx 2015-05-28 12:47:23 -05:00
Anthony Minessale 2c9121cd85 FS-7503: increase max 2015-05-28 12:47:23 -05:00
Anthony Minessale fa4be8326d FS-7515: use negative x and y for ticker to avoid extra duplication 2015-05-28 12:47:23 -05:00
Anthony Minessale e5dae7e602 FS-7513: prevent null layer img 2015-05-28 12:47:23 -05:00
Anthony Minessale 70198e0d28 FS-7500: use abs value to compute width for img starting in negative space 2015-05-28 12:47:22 -05:00
Seven Du 6afe079946 FS-7500: allow patch to negative x,y 2015-05-28 12:47:22 -05:00
Anthony Minessale d697acb281 tabify
fix emacs tabs mode
2015-05-28 12:47:22 -05:00
Anthony Minessale 48c21b6998 FS-7515: prevent unload when in use 2015-05-28 12:47:22 -05:00
Anthony Minessale d51d4e3c8d FS-7515: reset img on reset 2015-05-28 12:47:22 -05:00
Michael Jerris 34b3804413 FS-7506: make core specify default font instead of each place we use it 2015-05-28 12:47:22 -05:00
Anthony Minessale 810a5d5831 FS-7515: add more cv features 2015-05-28 12:47:22 -05:00
Seven Du 7447977674 FS-7515: some fixes
fix seg when passing NULL to strstr
use zstr to detect empty str
fix compiler warning about || and &&
2015-05-28 12:47:22 -05:00
Anthony Minessale 779c042ed2 FS-7515: tweak 2015-05-28 12:47:22 -05:00
Anthony Minessale 93c841d9e8 FS-7515: add more features to mod_cv 2015-05-28 12:47:22 -05:00
Michael Jerris 40d0e1fdd7 FS-7440: handle m=video lines before m=audio 2015-05-28 12:47:22 -05:00
William King caee0a3119 CID: 1294434 fixing a sizeof statement that was working for so long because on 64bit boxes the pointer size would be 64bits and the uint8_t was expecting at least 32 2015-05-28 12:47:21 -05:00
William King 4f468b14e9 CID: 1294483 no need to check if an unsigned variable is less than 0 2015-05-28 12:47:21 -05:00
William King f09dad317f CID: 1294489 missing break statement which would cause recvonly sdp to be treated as sendrecv 2015-05-28 12:47:21 -05:00
William King acec23d8c8 CID: 1294518 remove chance for divide by 0 2015-05-28 12:47:21 -05:00
William King b39c3058ee CID: 1294524 variables not used in the function 2015-05-28 12:47:21 -05:00
William King 5e35f27cb1 CID: 1294548 adding a check for the return value 2015-05-28 12:47:21 -05:00
William King 99f61f7ab8 CID: 1294549 comparison vs assignment 2015-05-28 12:47:21 -05:00
Michael Jerris 857a61318e FS-7507: Add global vars fonts_dir, images_dir, data_dir, localstate_dir
change configure detection to do FHS layout if you specify a prefix, unless --disable-fhs is passed to configure
moved includes to be under /usr/include/freeswitch dir in fhs layout
install font files into fonts_dir
2015-05-28 12:47:21 -05:00
Anthony Minessale d0bd11f7bc FS-7515: refactor 2015-05-28 12:47:21 -05:00
Seven Du 06acde23a1 FS-7517: fix openh264 packet loss logic and tweak some logs 2015-05-28 12:47:21 -05:00
Seven Du 30463bfc1e FS-7513: break is safer than continue
when the encoder returns 0, it means no more data will come and we should not try again
2015-05-28 12:47:21 -05:00
Anthony Minessale f6886b05d1 FS-7515: overlay refactor add zidx and abs position 2015-05-28 12:47:21 -05:00
Anthony Minessale d8e5334a05 FS-7513: add some mutexes on video_read_callback code 2015-05-28 12:47:21 -05:00
Anthony Minessale 1fb0dcd61d FS-7513: unlock vs lock 2015-05-28 12:47:20 -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
Anthony Minessale cbe4f10ba3 FS-7515: expand on overlays 2015-05-28 12:47:20 -05:00
Seven Du 046798a057 FS-7513: don't write 0 data, openh264 might return 0 2015-05-28 12:47:20 -05:00
Anthony Minessale 7d60e6e868 FS-7513: missing some logic for those with video to take layers from those with avatars 2015-05-28 12:47:20 -05:00
Anthony Minessale c312b50da7 FS-7515: update cv to use new alpha supported switch_image_t 2015-05-28 12:47:20 -05:00
Seven Du cc27c51eb7 FS-7517: trival treak openh264 logs 2015-05-28 12:47:20 -05:00
Anthony Minessale c6bd6aea4e FS-7499: juggle log lines 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
Brian West 8f361ab00b Clang-3.5 warnings fixed 2015-05-28 12:47:20 -05:00
Anthony Minessale eb86d65cde FS-7515: add missing parse code 2015-05-28 12:47:19 -05:00
Anthony Minessale e20ddd3818 FS-7515: debounce 2015-05-28 12:47:19 -05:00
Anthony Minessale 8fddf6b99d FS-7513: protect layout hash 2015-05-28 12:47:19 -05:00
Anthony Minessale 9cf804d4d0 FS-7515: add opaque container for png to pass around and save width and height 2015-05-28 12:47:19 -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 f364a4190b FS-7509: don't need this change revert it 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
Anthony Minessale c8a189a433 FS-7499: demote log line 2015-05-28 12:47:18 -05:00
Anthony Minessale fc0bf67219 move nested condition parsing to only happen if main condition was satisfied may alter behaviour see docs and FS-4935 2015-05-28 12:47:18 -05:00
Anthony Minessale d10ea7f943 FS-7513: favor callers with video to take spaces in the layouts over callers with avatars 2015-05-28 12:47:18 -05:00
Anthony Minessale 5d9e4752a5 FS-7513: add auto-3d-position attr to <layout> and the auto as a valid value in existingaudio-position in <image> to auto-arrage the 3d openal positioning to either set it for the whole layout or an individual image 2015-05-28 12:47:17 -05:00
Anthony Minessale 42e7b81b1e FS-7500 FS-7508: move debug logging to DEBUG1 2015-05-28 12:47:17 -05:00
Anthony Minessale 6901329760 FS-7500: drop flags on recover 2015-05-28 12:47:17 -05:00
Anthony Minessale 01c0a1d44d FS-7500: don't send blank vid on sleep unless there is nothing else going on 2015-05-28 12:47:17 -05:00
Anthony Minessale 6522dbdffb FS-7500: wait for video ready on answer 2015-05-28 12:47:17 -05:00
Anthony Minessale d293e9bd1b FS-7500: check for uninit srtp 2015-05-28 12:47:17 -05:00
Anthony Minessale 62c3ddfab3 FS-7500: fix sleep sending blank img too fast 2015-05-28 12:47:17 -05:00
Anthony Minessale d5e48302e6 FS-7501: improve linked list algorithm in a few places to help performance 2015-05-28 12:47:17 -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 74cff6a744 FS-7513: fix queued video playbacks 2015-05-28 12:47:16 -05:00
Anthony Minessale 8a0b95115f FS-7513: have one way video calls also use blank avatar system 2015-05-28 12:47:16 -05:00
Seven Du 828b6a553e FS-7508: improve vpx err msg 2015-05-28 12:47:16 -05:00
Brian West cfc8dc5b47 FS-7500: fix buffer too small in fsv 2015-05-28 12:47:16 -05:00
Anthony Minessale f8287d0617 FS-7513: add profile param video-no-video-avatar and variable video_avatar_png to set video replacement avatar images
add also video_no_video_avatar_png to only check the var on no-video situations
2015-05-28 12:47:16 -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 07b9600130 FS-7513: play files in layers 2015-05-28 12:47:16 -05:00
Seven Du c128d0c850 FS-7515: fix copy & paste err 2015-05-28 12:47:16 -05:00
Seven Du 384c595c31 FS-7515: fix compiler warnings on Mac 2015-05-28 12:47:16 -05:00
Brian West 379950f523 FS-7500: video introp tweaks 2015-05-28 12:47:15 -05:00
Brian West 0f3b3752d2 FS-7513: support simo vid recording of conference 2015-05-28 12:47:15 -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 c07513ea55 FS-7506: make freetype optional 2015-05-28 12:47:15 -05:00
Anthony Minessale 83b72513f6 FS-7515: reset stats in a few places 2015-05-28 12:47:15 -05:00
Anthony Minessale 74737983be FS-7515: automake and pkg-config detection for mod_cv/opencv 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 cb2bf7269a FS-7515: promote debug message 2015-05-28 12:47:15 -05:00
Anthony Minessale b21406e4c0 FS-7515: add mod_cv 2015-05-28 12:47:15 -05:00
Anthony Minessale ee81167996 FS-7502: add some changes for video media bug 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 1cbc3c58a5 FS-7502: add record_concat_video=true to show split video recordings with session record 2015-05-28 12:47:15 -05:00
Seven Du 96d4318964 FS-7508: add debug logs 2015-05-28 12:47:15 -05:00
Seven Du dc17932a81 FS-7508: restart on ts mismatch and add some logs to track packet loss 2015-05-28 12:47:15 -05:00
Anthony Minessale 216850c1a0 FS-7502: set video flag on record session 2015-05-28 12:47:14 -05:00
Anthony Minessale dc7608fb9e FS-7501: add mutex to vid buf and fix regression from last regression fix 2015-05-28 12:47:14 -05:00
Anthony Minessale 84ca513353 FS-7500: fix some regressions regarding passthru video 2015-05-28 12:47:14 -05:00
Michael Jerris 0fc2c54b11 FS-7513: Add new conference profile param video-mode (mux,transcode,passthrough) with passthrough as default
remove transcode-video, decode-video, mix-video flags
2015-05-28 12:47:14 -05:00
Michael Jerris 93debc5ae1 FS-7501: remove debug 2015-05-28 12:47:14 -05:00
Anthony Minessale 8b9f8748a2 FS-7500: fix syntax 2015-05-28 12:47:14 -05:00
Anthony Minessale fa7695847a FS-7499: improve generic nack and vpx framing 2015-05-28 12:47:14 -05:00
Brian West 7fc019a979 FS-7513: fix segfault on conference hangup 2015-05-28 12:47:14 -05:00
Anthony Minessale eb819b51b5 FS-7509: WIP media reneg stuff 2015-05-28 12:47:14 -05:00
Michael Jerris 6d5590a76a FS-7513: don't seg when you have a mute png defined that can not be read 2015-05-28 12:47:13 -05:00
Michael Jerris 2171081963 FS-7513: remove unused profile params ack-sound and nack-sound 2015-05-28 12:47:13 -05:00
Anthony Minessale 2bbe417fab FS-7508: use all the cpus 2015-05-28 12:47:13 -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
Anthony Minessale 13e60c420d FS-7513: don't want detach here 2015-05-28 12:47:13 -05:00
Seven Du fb429b2134 FS-7519: Another round to break mod_av, now mod_avcodec 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
Michael Jerris ca291c3f12 FS-7513: fix conference position api command description 2015-05-28 12:47:12 -05:00
Anthony Minessale fc1ff9209e FS-7508: timing update 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 18cd917916 FS-7508: fix when reading invalid vp9 and cleanup a bit 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 66dd1bc8e7 FS-7508: tweak 2015-05-28 12:47:12 -05:00
Seven Du 87766a23b7 FS-7508: add vp9 key frame detection and some packet sanity check 2015-05-28 12:47:12 -05:00
Anthony Minessale 4a6e9fd4b0 FS-7508: WIP vp9 stuff 2015-05-28 12:47:12 -05:00
Anthony Minessale 35c6a1479d FS-7500: move flags up 2015-05-28 12:47:11 -05:00
Anthony Minessale d418fb37ed FS-7500: init dtmf to 0 2015-05-28 12:47:11 -05:00
Anthony Minessale 5fcb594246 FS-7500: add partition mode to switch_buffer 2015-05-28 12:47:11 -05:00
Anthony Minessale 8f3788abce FS-7500: wtf 2015-05-28 12:47:11 -05:00
Anthony Minessale fdcfcaece9 FS-7500: don't wait for video ready from inside video thread that sets that flag 2015-05-28 12:47:11 -05:00
Anthony Minessale 24254bb1fd FS-7500: revert 2015-05-28 12:47:11 -05:00
Anthony Minessale d3359ff9f0 FS-7500: don't wait for video ready from inside video thread that sets that flag 2015-05-28 12:47:11 -05:00
Seven Du 1a31f1f183 add vp9 passthru 2015-05-28 12:47:11 -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 ae8ddfd4f1 FS-7518: add mod_mp4v2
libmp4v2-dev is required for this mod
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 c040b0ff0d FS-7503: store stream name so same module can handle mutiple stream interfaces 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
Anthony Minessale fa2f274c61 FS-7513: move layout switching to muxing thread for more protection 2015-05-28 12:47:10 -05:00
Seven Du 9d635f57ef add MP3 codec interface 2015-05-28 12:47:10 -05:00
Michael jerris 1cd9e52b9e FS-7499: add enum for various rtcp related types 2015-05-28 12:47:10 -05:00
Anthony Minessale 6f379f43c1 FS-7500: fix calculation bug in switch_img_fit 2015-05-28 12:47:10 -05:00
Seven Du b7fc2e047d add 48k PCMU support 2015-05-28 12:47:09 -05:00
Anthony Minessale cd9dd44a16 FS-7514: reduce default 2015-05-28 12:47:09 -05:00
Anthony Minessale e3d79947fc FS-7513: reset layer on aspect change 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 c9cccd519a FS-7509: add some more bandwidth control features 2015-05-28 12:47:09 -05:00
Anthony Minessale 3e7c0f6558 FS-7499: fix seg 2015-05-28 12:47:09 -05:00
Anthony Minessale 6e05e09e9a FS-7500: missing newline 2015-05-28 12:47:09 -05:00
Anthony Minessale 405abc5177 FS-7500: fix regression in no-camera mode 2015-05-28 12:47:08 -05:00
Anthony Minessale e7ab257c45 FS-7513: revert 2015-05-28 12:47:08 -05:00
Anthony Minessale 5755b7849e FS-7513: move code to core 2015-05-28 12:47:08 -05:00
Anthony Minessale 7fe734e1f9 FS-7513: move thread create and fix missing mutex unlock 2015-05-28 12:47:08 -05:00
Anthony Minessale 5b9ada2b43 FS-7509 FS-7513: add vid floor control 2015-05-28 12:47:08 -05:00
Anthony Minessale 7cf3cb0cda FS-7513: move vb to each member for less contention 2015-05-28 12:47:08 -05:00
Anthony Minessale 0cd254ef8f FS-7513: fix banner disappearing when vid muting 2015-05-28 12:47:08 -05:00
Anthony Minessale ee09575466 FS-7500: try not do 2015-05-28 12:47:08 -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 289c7925aa FS-7508: reset packet data on codec reset 2015-05-28 12:47:08 -05:00
Anthony Minessale b1e8f86b37 FS-7500: block overlapping writes 2015-05-28 12:47:08 -05:00
Anthony Minessale 4b21a45e9e FS-7513: fix typo 2015-05-28 12:47:07 -05:00
Anthony Minessale 78d06832e7 FS-7500: add force flag 2015-05-28 12:47:07 -05:00
Anthony Minessale dbec35e734 FS-7513: move code up 2015-05-28 12:47:07 -05:00
Anthony Minessale ab34c9a99c FS-7500: stick with little train img 2015-05-28 12:47:07 -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 7dba838926 FS-7513: fix read lock bug 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 eb78d2ae7b FS-7499: ignore replay errs when nack is enabled 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
Anthony Minessale 69fd32f8ef FS-7500: set decoded read mode 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
Seven Du 4289a7ec59 FS-7519: initial version of record_av to record mp4
it generate better compatible mp4 than vlc, so it compatible with quicktime and safari
except that the first few video frames messed up, maybe some pts issue, to be fixed

support float audio, and it can save to webm
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
Anthony Minessale 69b955c13b FS-7514: add sync offset default to 500ms 2015-05-28 12:47:05 -05:00
Anthony Minessale 6b289ed02a FS-7514: slow down vlc callback by syncing with video flow 2015-05-28 12:47:05 -05:00
Anthony Minessale af0f2e6ea8 FS-7514: buffer video too for vlc 2015-05-28 12:47:05 -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
Seven Du c59874cbff FS-7517 FS-7508: typo 2015-05-28 12:47:05 -05:00
Brian West 8c9acc4316 FS-7517: Fix mod_openh264 include 2015-05-28 12:47:05 -05:00
Mike Jerris 086cf1c279 FS-7500: expand libpng detection to try to find a good png >= 1.6.16, fall back to older verison in weezy, and add support for building without libpng 2015-05-28 12:47:05 -05:00
Anthony Minessale c02f694c37 FS-7509: add a way to choose bandwidth 2015-05-28 12:47:05 -05:00
Anthony Minessale 2f0f408984 FS-7500: ping video thread on shutdown so it can end 2015-05-28 12:47:04 -05:00
Seven Du afc67e517b FS-7500: fix type mismatch 2015-05-28 12:47:04 -05:00
Anthony Minessale 632c781c1c FS-7513 FS-7509: add control for png and fix bug with null args 2015-05-28 12:47:04 -05:00
Anthony Minessale 74f25524f1 FS-7513: add some controls 2015-05-28 12:47:04 -05:00
Anthony Minessale 1c6a15fde4 FS-7513: add canvas refresh to redraw gaps on overlap enter/exit 2015-05-28 12:47:04 -05:00
Anthony Minessale 09704516d7 FS-7513: fix sticky floor lock 2015-05-28 12:47:04 -05:00
Anthony Minessale f8729d5440 FS-7500: make video bandwidth accurate for vpx 2015-05-28 12:47:04 -05:00
Anthony Minessale 93db69ed03 FS-7500: can't use stristr for this 2015-05-28 12:47:04 -05:00
Anthony Minessale ae4686013a FS-7513: add mutex 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 4584e6a8e4 FS-7513: add reset on canvas change 2015-05-28 12:47:03 -05:00
Anthony Minessale 270aba6849 FS-7513: improve reservation id and layout switching with overlap 2015-05-28 12:47:03 -05:00
Anthony Minessale 16b752a957 FS-7513: don't call force on unset 2015-05-28 12:47:03 -05:00
Anthony Minessale 356a501b7c FS-7508: reduce vpx memory footprint 2015-05-28 12:47:03 -05:00
Anthony Minessale 9bc84051f6 FS-7513: fix possible mem leak 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
Anthony Minessale 84074ab804 FS-7513: cleanup 2015-05-28 12:47:02 -05:00
Anthony Minessale 7307005c56 FS-7513: clear screen on unvmute 2015-05-28 12:47:02 -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
Seven Du f4fad4e756 FS-7500: fix seg 2015-05-28 12:47:02 -05:00
Anthony Minessale 704c036593 FS-7513: change name of flag to make sense 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 ae68efd48e FS-7500: assert on neg coordinates causes a seg on free if they are used 2015-05-28 12:47:02 -05:00
Anthony Minessale eca9107498 FS-7513: add video mute and suite of controls 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
Anthony Minessale 98db5879bd FS-7513: remove extra mutex 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 e868e6eec9 FS-7513: refactor reset_image, we do not need the round to even anymore, actually it causes side effects 2015-05-28 12:47:01 -05:00
Seven Du 18a896d39d FS-7513: trying to fix mutex 2015-05-28 12:47:01 -05:00
Seven Du 9faf03c91e FS-7500: be safe for patch and fill, off by 1 2015-05-28 12:47:01 -05:00
Seven Du c70e8cf216 FS-7500: add yuv2rgb 2015-05-28 12:47:01 -05:00
Seven Du b90ef728f3 FS-7500: fix rgb2yuv typo 2015-05-28 12:47:01 -05:00
Seven Du 061bcb063a FS-7500: fix patch and fill on an odd position 2015-05-28 12:47:01 -05:00
Anthony Minessale b808099f6a FS-7513: try 30 again 2015-05-28 12:47:01 -05:00
Anthony Minessale 160d3bb817 FS-7513: add mutex 2015-05-28 12:47:01 -05:00
Seven Du 2841319037 FS-7500: fix compiler warning 2015-05-28 12:47:01 -05:00
Anthony Minessale dba3f8429d FS-7513: try out 25fps 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
Anthony Minessale e84d7b8c89 FS-7513: banner control and layout bgcolor param 2015-05-28 12:47:00 -05:00
Anthony Minessale 4afc59370a FS-7513: do banner with set rect so we don't have to keep patching it in 2015-05-28 12:47:00 -05:00
Anthony Minessale 47cb08c491 FS-7513: don't attach when you don't have video 2015-05-28 12:47:00 -05:00
Anthony Minessale a8e8f2e149 FS-7513: factor conditional back out and use fixed 30FPS timer 2015-05-28 12:47:00 -05:00
Anthony Minessale 6f39539308 FS-7513: comment demo code and set bg color with new anti-alias 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
Seven Du a446d8411e FS-7513: clean white spaces 2015-05-28 12:47:00 -05:00
Seven Du 187b0c1485 FS-7506: fix pen position and add mono font support 2015-05-28 12:47:00 -05:00
Anthony Minessale 0b496715f9 FS-7513: dup sring before chopping it up 2015-05-28 12:47:00 -05:00
Anthony Minessale 0115fa192e FS-7513: keyframe every 10 on conf 2015-05-28 12:47:00 -05:00
Anthony Minessale b2fa835a0a FS-7513: only use timer when needed 2015-05-28 12:47:00 -05:00
Anthony Minessale 0ca774e4cf FS-7513: don't need to free that 2015-05-28 12:47:00 -05:00
Anthony Minessale d7127764e8 FS-7506 FS-7513: banner update 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 8a1cb14015 FS-7499: trying to fix rtp data len when rtp extension is used
duplicated some code from 4943~4953, but that code has it's own problem, it forget to reset *bytes results to
larger frame->datalen could read beyond the buffer, and it also makes stats not accurate. But if we reset *bytes
at that place, then later the switch_vb_put_packet has problem because it depends that *bytes. this patch should
fix the datalen at least buf still leaves duplicated code and inaccurate stats.
2015-05-28 12:46:59 -05:00
Seven Du ff076afaae FS-7506: utf8 support of draw text 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
Seven Du 0a015f4c76 FS-7517: fix hardcoded width and height on video reset 2015-05-28 12:46:59 -05:00
Seven Du 2842dedc21 FS-7500: refactor switch_img_patch, it was made complicated than it should be 2015-05-28 12:46:59 -05:00
Seven Du ba9c2f38a7 FS-7513: round screen size to even numbers to prevent green lines on edge with 1up_top_left+5 and 6x6 layouts 2015-05-28 12:46:59 -05:00
Seven Du af034b2713 FS-7513: fix compile w/o openal 2015-05-28 12:46:59 -05:00
Anthony Minessale 39253d9fd2 FS-7513: revert 2015-05-28 12:46:59 -05:00
Anthony Minessale c9e0a389bd FS-7513: remove locking 2015-05-28 12:46:59 -05:00
Anthony Minessale 1deca68e37 FS-7513: fix math on image resizing 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 8be96b106e FS-7513: refactor some screen switching and layout stuff 2015-05-28 12:46:58 -05:00
Anthony Minessale d8ce20e6bf FS-7513: clear group when switching to standard layout 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 8f00bd1173 FS-7513: make group change sticky when done from cli command 2015-05-28 12:46:58 -05:00
Seven Du 7764b4ea32 FS-7513: cleanup white spaces 2015-05-28 12:46:58 -05:00
Seven Du 78067a890c FS-7517: update to openh264 commit 3f19534dd6118b96ce73073ae1e047490c71b6e6 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 3e323e3b09 FS-7513: add auto layout advance based on group 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 8d3f93152e FS-7508: parse both bw vars the same 2015-05-28 12:46:57 -05:00
Seven Du 58a8d5daa6 FS-7513: remove extra memset since it's already garanteed in switch_core_alloc 2015-05-28 12:46:57 -05:00
Seven Du 93ee6158ff FS-7514: make vlc endpoint works with originate in addition to bridge 2015-05-28 12:46:57 -05:00
Anthony Minessale 7400d73c93 FS-7513: refactor thread 2015-05-28 12:46:57 -05:00
Anthony Minessale b600b0b6ee FS-7508: add avg duration into codec 2015-05-28 12:46:57 -05:00
Anthony Minessale d8241a12ea FS-7499: comment out sip based picture update 2015-05-28 12:46:57 -05:00
Seven Du 74f4b1800b FS-7513: fix copy and paste error 2015-05-28 12:46:57 -05:00
Seven Du 4b1979a119 FS-7513: fix compiler warning about uninitialized var and make sure allocated memory is filled with 0 2015-05-28 12:46:57 -05:00
Anthony Minessale a6dbc2c6f8 FS-7513: fix overlap 2015-05-28 12:46:57 -05:00
Anthony Minessale 8915516c13 FS-7513: here's a story....... of a lovely feature 2015-05-28 12:46:56 -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
Seven Du 7bdd80499d FS-7513: fix assert 2015-05-28 12:46:56 -05:00
Seven Du d93f304b25 FS-7501: comment out unused function to shut warning on Mac 2015-05-28 12:46:56 -05:00
Anthony Minessale 91c20769ed FS-7513: conf WIP 2015-05-28 12:46:56 -05:00
Anthony Minessale 1422158271 FS-7500: add to last commit 2015-05-28 12:46:56 -05:00
Anthony Minessale ac140fb6dd FS-7500: codec tweaks 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 260e277f36 FS-7513: conf WIP hard code 4x4 squares in 720p more to come 2015-05-28 12:46:56 -05:00
Anthony Minessale 7ccbf44725 FS-7500: fix missing division 2015-05-28 12:46:55 -05:00
Seven Du bc4e9704b8 FS-7513: refactor mcu code, put everyone on a canvas and send out using a dedicated thread with a constant FPS 2015-05-28 12:46:55 -05:00
Seven Du 7c0237c142 FS-7500: really fix image copy 2015-05-28 12:46:55 -05:00
Anthony Minessale d87cfae0c9 FS-7513: more conf vid WIP 2015-05-28 12:46:55 -05:00
Anthony Minessale 2f5989c453 FS-7500: fix compile err 2015-05-28 12:46:55 -05:00
Seven Du 89c02eada9 FS-7500: fix image copy 2015-05-28 12:46:55 -05:00
Anthony Minessale 387cbc9dda FS-7513: WIP CONF STUFF 2015-05-28 12:46:55 -05:00
Anthony Minessale d6ef34a725 FS-7508: trying to mitigate chrome going crazy on reload 2015-05-28 12:46:55 -05:00
Anthony Minessale 4d100bc2e8 FS-7509: stop media on verto detach 2015-05-28 12:46:55 -05:00
Anthony Minessale 59fa1b9ac7 FS-7499: mod vid refresh stuff 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
Anthony Minessale e00fbe5aad FS-7508: reduce error freq 2015-05-28 12:46:55 -05:00
Anthony Minessale e79a24ed2b FS-7513: more floor stuff 2015-05-28 12:46:54 -05:00
Anthony Minessale deca70c270 FS-7513: adjust floor change code 2015-05-28 12:46:54 -05:00
Anthony Minessale 955dd099ca FS-7166 #resolve 2015-05-28 12:46:54 -05:00
Anthony Minessale 6789f37b39 # This is a combination of 2 commits.
# The first commit's message is:

FS-7166 #resolve

# This is the 2nd commit message:

revert
2015-05-28 12:46:54 -05:00
Anthony Minessale f110ce40e2 FS-7501: mod of video i/o for jb 2015-05-28 12:46:54 -05:00
Anthony Minessale 0c56081975 FS-7499: copy port to where apr keeps it too 2015-05-28 12:46:54 -05:00
Anthony Minessale 2983c7e6df FS-7499: keep track of from addr from rtp separate since on ice you get stun packets etc from other ip. This helps auto adjust work properly 2015-05-28 12:46:54 -05:00
Anthony Minessale d2bbd50791 FS-7513: tweak locking on video read callback 2015-05-28 12:46:54 -05:00
Anthony Minessale a006d53a3d FS-7499: tweak nack and fir handling 2015-05-28 12:46:54 -05:00
Anthony Minessale d56a681f0a FS-7513: reduce complexity of video_bridge feature 2015-05-28 12:46:54 -05:00
Anthony Minessale 9e4eff192f FS-7513: fix vid floor logic 2015-05-28 12:46:54 -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 d026624631 FS-7513: restore video relationships and refactor conference to use video_read callbacks instead of its own thread and change behavior so video floor holder never sees their own video unless they are the only one with video in the conference 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 81887e9bfc FS-7501: add video jitterbuffer debug controls 2015-05-28 12:46:53 -05:00
Anthony Minessale ac2e1b692e FS-7501: tweak some settings on jb 2015-05-28 12:46:53 -05:00
Anthony Minessale 6b92f8624c FS-7501: remove debug 2015-05-28 12:46:53 -05:00
Anthony Minessale bc24e0f28a support AVPF too 2015-05-28 12:46:53 -05:00
Anthony Minessale 6ba2205cf7 FS-7499: enable nack in video negotiation 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 79ffc95928 FS-7514: keep pointer pointed 2015-05-28 12:46:52 -05:00
Anthony Minessale b63683ade0 FS-7501: more code 2015-05-28 12:46:52 -05:00
Anthony Minessale 785ecdb39e FS-7508: revert 2015-05-28 12:46:52 -05:00
Anthony Minessale 4e7cda1b49 FS-7501: remove debug 2015-05-28 12:46:52 -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 91b88aefe7 FS-7517: this mode is more reliable, default for now 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 f6484f5bf4 FS-7517: add warning dropped from 0353e45 back in case it still happens 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 faa99a7a47 FS-7499: don't send fir or pli till stun is established 2015-05-28 12:46:51 -05:00
Anthony Minessale ae44bd27e2 FS-7499: tweaks to rate of fir/pli 2015-05-28 12:46:51 -05:00
Anthony Minessale 063eec1e8e FS-7500: fix recovery for video 2015-05-28 12:46:51 -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 1d844f150b FS-7514: don't auto answer in decode_video 2015-05-28 12:46:51 -05:00
Anthony Minessale 753f49fe32 FS-7517: use start and end bits 2015-05-28 12:46:51 -05:00
Anthony Minessale f5346bfe80 FS-7517: Reset context->nalu_28_start on mark bit - This makes FU-A parsing work 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 6a7509ffbc FS-7499: default rtcp to once a second for video and every 5 for audio 2015-05-28 12:46:51 -05:00
Anthony Minessale e1321c8775 FS-7517: fix pack mode 1 2015-05-28 12:46:51 -05:00
Anthony Minessale bc3ee71f87 FS-7517: this seems to actually work for some reason 2015-05-28 12:46:51 -05:00
Anthony Minessale a64d8b01d1 FS-7517: doh 2015-05-28 12:46:51 -05:00
Anthony Minessale 43ec552252 FS-7517: hack workaround in, its better than the way it is, must be fixed 2015-05-28 12:46:50 -05:00
Anthony Minessale de4a0e7a3c FS-7500: nevermind 2015-05-28 12:46:50 -05:00
Anthony Minessale be21d4f28f FS-7500: use unsigned int for frame->timestamp 2015-05-28 12:46:50 -05:00
Seven Du 23410ab94a FS-7514: use a larger and not hardcoded buffer for video packet 2015-05-28 12:46:50 -05:00
Anthony Minessale 970064294c FS-7500: refactoring 2015-05-28 12:46:50 -05:00
Anthony Minessale b0fd27bb8f FS-7500: comment debug 2015-05-28 12:46:50 -05:00
Anthony Minessale 8f0910509f FS-7500: add keyframe req and session refresh req debounce 2015-05-28 12:46:49 -05:00
Anthony Minessale 91602e9cfa FS-7499: properly decode rtcp 2015-05-28 12:46:49 -05:00
Anthony Minessale 01aea82cbe FS-7519: add debug line 2015-05-28 12:46:49 -05:00
Anthony Minessale 03d870bb19 FS-7508: revert chage to debounce key reqs 2015-05-28 12:46:49 -05:00
Anthony Minessale 2ea12656ea FS-7500: improvement for conf vid 2015-05-28 12:46:49 -05:00
Seven Du e3ffa73636 FS-7519 FS-7517: looks like decoders don't decode FU-A bit steams, this is a simple implementation that works with some FU-A bit streams, mod_av works better most cases 2015-05-28 12:46:49 -05:00
Seven Du 978748ed09 FS-7519: set encoder zerolatency 2015-05-28 12:46:49 -05:00
Anthony Minessale 45898cfad7 FS-7500: better version of last commit 2015-05-28 12:46:49 -05:00
Anthony Minessale b747687bb2 FS-7500: set ssrc from frame not rtp session so the ssrc changing coded can detect a shift 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
Seven Du 81bec5ebd0 FS-7519: add missing deps 2015-05-28 12:46:48 -05:00
Anthony Minessale 2e1bdfb24a FS-7519: add automistake for mod_av 2015-05-28 12:46:48 -05:00
Anthony Minessale 8a56d8a086 FS-7508: seems to work better restarting on error 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
Seven Du dcb9d3c99e FS-7519: rename mod_ffmpeg to mod_av 2015-05-28 12:46:48 -05:00
Seven Du 4c95ae0510 cleanup mod_ffmpeg 2015-05-28 12:46:48 -05:00
Anthony Minessale a8b00acda7 FS-7500: sync up going both ways after picture reset 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 b8577d0ce9 FS-7500: fix seg and clean up keyframe code 2015-05-28 12:46:48 -05:00
Anthony Minessale ca70f76a8b FS-7500: refresh vid the other way too when asking for keyframe 2015-05-28 12:46:48 -05:00
Anthony Minessale 85d34e7ac9 FS-7514: SQUASH ME 2015-05-28 12:46:47 -05:00
Anthony Minessale 6402f3533c FS-7514: vlc audio buffer tweak 2015-05-28 12:46:47 -05:00
Anthony Minessale 79bc5bcda2 FS-7513: add video decode conference flag 2015-05-28 12:46:47 -05:00
Anthony Minessale fbe347ead4 add mod_ffmpeg 2015-05-28 12:46:47 -05:00
Anthony Minessale e83db9e249 FS-7517: remove debug 2015-05-28 12:46:47 -05:00
Anthony Minessale 57bbdc929b FS-7500: remove debug code 2015-05-28 12:46:47 -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 140a1c9661 FS-7500 FS-7508: shift some hacks around 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 aa654da777 FS-7500: use SWITCH_DEFAULT_VIDEO_SIZE as slice size 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
Seven Du 3b7bdac4b9 FS-7517: mod_openh264 follows up the new encoder flow 2015-05-28 12:46:45 -05:00
Anthony Minessale e7d34f3170 FS-7508: tolerate some messed up packets a little more 2015-05-28 12:46:45 -05:00
Anthony Minessale 40ee25f5b8 FS-7508: change vpx encoder to not re-init the whole codec, it messes it up but side effect, we need to init the encoder at 4k and scale down to aovid the vpx resize seg 2015-05-28 12:46:45 -05:00
Anthony Minessale 96025a407d FS-7500: remove debug 2015-05-28 12:46:45 -05:00
Anthony Minessale 6822994d25 FS-7500: video_decoded_echo to echo_decode_video 2015-05-28 12:46:45 -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
Anthony Minessale fe957fe66a FS-7500: remove temp bridge echo hack 2015-05-28 12:46:45 -05:00
Anthony Minessale d7af2b128c FS-7500: clean up logic of encoder flow and set rules on return values and tweak some codec settings on vp8 2015-05-28 12:46:45 -05:00
Anthony Minessale ec9b7c0499 FS-7500: add video_decoded_echo var to make the echo app decode and re-encode video frames for testing 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 73b2a5ea87 FS-7500: tmp comment 2015-05-28 12:46:45 -05:00
Anthony Minessale 22020c86cb FS-7500: add SFF_USE_VIDEO_TIMESTAMP to tell video write frame if it needs to use a timer or not for timestamps 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 258dacc742 FS-7500: fix if statement 2015-05-28 12:46:44 -05:00
Anthony Minessale 44e7929507 FS-7500: revert earlier bridge change 2015-05-28 12:46:44 -05:00
Anthony Minessale 3c29d4e8a7 FS-7500: mark places to fix later 2015-05-28 12:46:44 -05:00
Anthony Minessale 659c1e474e FS-7500: Work in progress. Added codec config params that can be set from session and made vpx codec re-init on size change. Also add periodic key frame timer 2015-05-28 12:46:44 -05:00
Anthony Minessale 365a5dd820 FS-7500: major refactoring pass. Push concepts from mod_vlc as deep as possible and flesh out api to use everywhere else. Round 2 will be to convert the bridge and other places using the same code 2015-05-28 12:46:44 -05:00
Anthony Minessale 765fff3d75 FS-7500: add support for codec control and use it to pass messages down to the codec and use it to implement keyframe reset for fir, pli and nack. Later we will expand to handle nack correctly. 2015-05-28 12:46:44 -05:00
Anthony Minessale d4a5ebf97d FS-7500 FS-7517 FS-7508 FS-7514: chrome working on most, bria working on some 2015-05-28 12:46:44 -05:00
Anthony Minessale 9fdb54766c FS-7508 FS-7517: import h264 and vpx codec files 2015-05-28 12:46:44 -05:00
Anthony Minessale d0d2e03672 FS-7514: [mod_vlc] temp workaround 2015-05-28 12:46:44 -05:00
Brian West cd98ec85e2 fix line endings 2015-05-28 12:46:43 -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 055de41484 FS-7513: let the core thread to read video if vid-floor in conference already locked-hold by someone else 2015-05-28 12:46:43 -05:00
William King 4fc94e3907 FS-7500 S-7513: Few build fixes 2015-05-28 12:46:43 -05:00
Seven Du 99ed41a4bd FS-7513: Example code to use the core video thread with a custom callback
It by default remains the default behaviour

However, you can setup a relationship between members to let the
member choose to see anyone else but the floor, e.g.:

  conference 3000 relate 1 2 sendvideo

In the above command member 2 will see member 1's video regardless
member 1 has video floor or not
2015-05-28 12:46:43 -05:00
Seven Du 35ff4b5cda FS-7500: add ability to insert a custom callback to the core video thread
the callback will be called on each loop on read video frame, or
the callback function call run it's own loop to take over the core
loop so it can read video from session by itself.

the callback function can -

return SWITCH_STATUS_SUCCESS to wait another loop
return SWITCH_STATUS_CONTINUE to continue use the default behaviour
return anything else will break the core video loop and end the
       core thread
2015-05-28 12:46:43 -05:00
Seven Du 422a1f0419 FS-7513: show relationships 2015-05-28 12:46:43 -05:00
Seven Du 48c1363476 FS-7513: force floor on member join 2015-05-28 12:46:43 -05:00
Seven Du d33e5659f6 FS-7514: refresh req on vlc channel 2015-05-28 12:46:43 -05:00
Seven Du 78efac8154 FS-7514: not hardcoded H264 anymore 2015-05-28 12:46:43 -05:00
Seven Du 282b04a880 FS-7514: cleanup 2015-05-28 12:46:43 -05:00
Seven Du 240ec72fa4 FS-7514: allows the core video thread to read from the vlc endpoint 2015-05-28 12:46:43 -05:00
Seven Du 8e5cbb0e26 FS-7514: follow the last core_video refactor 2015-05-28 12:46:42 -05:00
Seven Du f3ad699526 FS-7500: update yuv codec 2015-05-28 12:46:42 -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 bcbdf8a347 FS-7500: add switch_core_video code 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
William King 6dec4de2fe FS-7508 FS-7517: [build] Convert the build over to automake, though there is still room to fix
the autoconf portion to detect the correct location of libopenh264

Basic conversion for vpx too.
Borrowing from ldns handling, setup mod_vpx to prompt for the required library when the module is enabled
2015-05-28 12:46:42 -05:00
Seven Du 4af7e7c68d FS-7514: vlc video 2015-05-28 12:46:42 -05:00
liyang 90818f137e FS-7500: allow using the video thread externally - e.g. non rtp based video 2015-05-28 12:46:42 -05:00
Seven Du e80b40f9f1 FS-7500: add raw video codec yuv I420 2015-05-28 12:46:42 -05:00
Seven Du 998d933671 FS-7500: initial idea to decode video in core 2015-05-28 12:46:42 -05:00
Seven Du 416745e2cd FS-7500: move video bridge logic to switch_core_media so possible to do transcoding 2015-05-28 12:46:41 -05:00
Seven Du dcca71d97d FS-7502: refresh video on video record or eavesdrop 2015-05-28 12:46:41 -05:00
Seven Du b23ba52807 FS-7502: video eavesdrop 2015-05-28 12:46:41 -05:00
Seven Du 90b654e923 FS-7502: add simple video media bug implementation, should work with .fsv, be sure to set enable_file_write_buffering=false
Conflicts:
	src/include/switch_types.h
2015-05-28 12:46:41 -05:00
Seven Du 67334bea27 FS-7513: [mod_conference] video recording in conference
conference 3000 record /tmp/testrecord.fsv
call 9194 try to playback
mp4 should also work with the mp4 file format, will be available soon
2015-05-28 12:46:41 -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
Anthony Minessale b5f75a0f43 FS-7582 #resolve #comment port from 1.6 its probably better to start working on 1.6 for any webrtc or dtls stuff 2015-05-27 16:48:16 -05:00
Anthony Minessale 2db8f94ab6 skip rtcp addr when mux is set 2015-05-27 06:14:08 -05:00
Italo Rossi 890991cd28 FS-7569 mod_callcenter - Tracking queue strategy changes to avoid stuck members 2015-05-25 15:00:14 -03:00
Brian West 1073b32bcf FS-7529 correct fix 2015-05-21 12:42:51 -05:00
Anthony Minessale d413bcd7b3 FS-7567 #resolve #comment additional occurrences beyond the initial patch discovered 2015-05-21 09:50:49 -05:00
Brian West 38ab8a9b31 Merge branch 'master' of https://freeswitch.org/stash/scm/fs/freeswitch 2015-05-20 14:52:44 -05:00
Brian West 4811ec9d6a FS-7562 --resolve 2015-05-20 14:52:23 -05:00
Jeff Lenk 278b42eb11 FS-7488 remove windows duplicate files 2015-05-20 13:19:12 -05:00
Anthony Minessale 5045864672 FS-7541 use switch_time_now for more accurate timestamps and wait for 3 consecutive missing packets to write silence into native recordings 2015-05-18 14:29:39 -05:00
Jeff Lenk acdb1ca582 FS-7488 windows fix build error 2015-05-17 13:45:52 -05:00
Chris Rienzo 25f2f18c5f FS-7557 fix crash when doing 'limit_usage mongo foo bar' 2015-05-15 08:43:00 -04:00
Chris Rienzo 13513439ba FS-7557 mod_mongo add limit backend - still testing 2015-05-14 17:19:42 -04:00
Michael Jerris 9fc8772aef FS-7463: revert commits c2c04632f3 b33563138b and 6bf74877b5f0. Future pull requests should be verified that they compile before submitting. 2015-05-14 13:55:32 -04:00
Luis Azedo 64c7fee8ca conditionally allow intercept of replaced call-id when processing replaces header
without this change one leg calls inhaled could not be picked because there is no bridge_uuid.

FS-7463 #resolve
2015-05-14 17:43:09 -05:00
Anthony Minessale II c2c04632f3 Merge pull request #241 in FS/freeswitch from ~LAZEDO/freeswitch-fs-7463:FS-7463 to master
* commit 'b33563138b0953693dbe0d32a439c533ea8b4316':
  conditionally allow intercept of replaced call-id when processing replaces header
2015-05-14 11:37:51 -05:00
William King 346f6cb6af FS-7552 #resolve 2015-05-13 15:56:18 -07:00
Steve Underwood b156cbd604 A slightly mroe elegant an commented fix for the potential overflow issue in udptl.c 2015-05-12 12:00:04 +08:00
Michael Jerris dbc550a26d FS-7184: add buffer overflow check in udptl_rx_packet 2015-05-11 19:46:27 -05:00
Brian West 8ce7f24b41 FS-7529 --resolve 2015-05-11 16:47:02 -05:00
doancea ccbef9e0c7 opus@8000h : with this change there RTP timestamps will be incremented with 960 (20 ms ptime) - per RFC , and the frame size will be 160 samples. 2015-05-11 16:48:49 +02:00
William King 15d8821ede FS-7060: On first startup, on a clean platform, make sure to create the amqp exchange. 2015-05-04 21:36:15 -07:00
Michael Jerris 2b79637036 FS-7523: [mod_json_cdr] don't install state handlers before we configure the module 2015-05-04 15:58:48 -04:00
Michael Jerris 7382cecf8c FS-7523: [mod_json_cdr] don't bind events before we configure the module 2015-05-04 11:46:30 -04:00
Michael Jerris 1b322bd952 FS-7425: #resolve dhparams might not be present, causing a seg. Make sure they are there before we apply them 2015-05-04 11:23:33 -04:00
Italo Rossi 1bc241922e FS-7464 mod_callcenter moh-sound needs to be expanded when containing variables. 2015-05-03 20:25:42 -03:00
William King d3bac671d2 FS-7526: add enable_fallback_format_fields for mod_amqp producer profiles if the profile param is set. 2015-05-03 11:23:30 -07:00
Chris Rienzo d8d3db284c FS-7496 [mod_http_cache] lookup file extension from content-type if missing in URL 2015-04-30 16:06:19 -04:00
Brian West d29c2d74b6 FS-7496 #resolve strip url args after the file extension 2015-04-30 14:29:21 -04:00
Chris Rienzo b28f7acac1 FS-7496 Updated mime.types, added switch_core_mime_type2ext function and used it in mod_httapi. Now, file extensions defined in mime.types will be applied if mod_httapi downloads a file without one. 2015-04-30 14:24:41 -04:00
Brian 518d74a4bc FS-7492 fix copy paste typo 2015-04-30 07:35:40 -05:00
Anthony Minessale c143ef1b3d FS-7466 2015-04-29 19:18:59 -05:00
Chris Rienzo 4bd9cdf423 FS-7491 #resolve #comment [mod_graylog2] send timestamp with millisecond precision instead of microsecond as required by GELF. 2015-04-28 16:18:46 -04:00
Chris Rienzo 5816ddcd39 FS-7490 #resolve #comment mod_rayo, srgs to regex transform: latest PCRE doesn't like regex generated by mod_rayo. It requires the group name not to start
with a digit.
2015-04-28 14:38:38 -04:00
Anthony Minessale II 50edd26068 Merge pull request #199 in FS/freeswitch from ~ARTURZ/freeswitch:FS-7307-native-recording-buffering to master
* commit '8e72fafb2c11d6fc8532f0de8d9d5d26200376fd':
  FS-7307: When recording a call in native format, buffering does not work
2015-04-28 13:14:41 -05:00
Michael Jerris b90aa23cbd FS-7488: [mod_managed] fix build error 2015-04-28 11:59:15 -05:00
Anthony Minessale 6e588b551b FS-7472 2015-04-28 16:12:37 -05:00
Anthony Minessale 452a4c1b05 swigall 2015-04-27 12:35:38 -05:00
Anthony Minessale 3058709a92 swigall 2015-04-25 14:15:26 -05:00
Anthony Minessale d60a8ab223 fix switch_core_codec_copy blocking interface forever issue 2015-04-25 13:22:46 -05:00
Anthony Minessale c56b7da53a copy part of 0e7eb72ca75a3584d203c6464fc8ceaacf79ebae 2015-04-25 13:22:43 -05:00
Eric Tamme b9b1b61d20 FS-7425: set dh params and call set_tmp_dh to enable PFS for DTLS-SRTP 2015-04-24 10:31:17 -05:00
Michael Jerris dbc124d45e FS-7465: make sure write buffer is big enough on stereo file handles 2015-04-24 09:50:01 -05:00
Anthony Minessale d3a747ad02 FS-7470: add force-register-domain param to verto 2015-04-24 09:49:54 -05:00
William King b01352c133 Fixing a typo from a last minute refactor after fixing a bug 2015-04-22 21:33:08 -07:00
Luis Azedo b33563138b conditionally allow intercept of replaced call-id when processing replaces header
without this change one leg calls inhaled could not be picked because there is no bridge_uuid.

FS-7463 #resolve
2015-04-22 20:11:12 +01:00
Michael Jerris a4d877c189 FS-7460: don't force ice in 3pcc-mode=proxy 2015-04-21 19:58:28 -04:00
Jeff Lenk 921f1a2bd2 FS-7458 2015-04-21 12:06:42 -05:00
Michael Jerris 9d68cab2ac FS-7456: also more complete fix for FS-7440, handle sdp with m lines in any order 2015-04-21 12:07:54 -04:00
Moises Silva b4250c87a5 Fix switch_ivr_parse_event() to not hangup a session when there is no media yet
If the lead-frames header is set but there is no media ready yet do not
attempt to read media from the channel and continue with command execution

FS-7455 #resolve
2015-04-20 18:23:57 -04:00
William King 777c1154ee Additional fix for error case when connection succeeds, but login fails 2015-04-19 19:11:47 -07:00
William King c620ee32c7 If we lost connection and can't reconnect, make sure to set active connection to NULL 2015-04-19 18:43:03 -07:00
Anthony Minessale II 4f134467e3 Merge pull request #236 in FS/freeswitch from ~CRIENZO/freeswitch:fs-7434 to master
* commit '638e93242257ca2c16dc3ab11ded5768a30f7007':
  FS-7434 reset jitter buffer when SSRC changes
2015-04-17 17:07:37 -05:00
Victor Torres 69d5333bfc FS-7445 fixes cc_outbound_cid_name_prefix 2015-04-17 18:50:16 -03:00
Michael Jerris 753030acf5 handle m=video lines before m=audio 2015-04-17 11:26:15 -05:00
Chris Rienzo 638e932422 FS-7434 reset jitter buffer when SSRC changes 2015-04-16 16:02:16 -04:00
Brian 40441413e0 Typo from previous convenience app commit 2015-04-16 07:50:07 -05:00
Brian 6a4c2b3406 convenience app 2015-04-15 17:01:12 -05:00
Anthony Minessale 464d8ab910 FS-7431 #resolve 2015-04-14 15:46:04 -05:00
Michael Jerris 3bbfa9f341 FS-7407: when using proxy, make sure to pick the right transport to the proxy 2015-04-13 22:54:02 +00:00