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