432 Commits (master)
 

Author SHA1 Message Date
Leo Ma b2b4b3f75b Recording while streaming
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma a8b3856b97 Use return of write as file size calculation
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma db8610e945 Fix mdat size bug
Use volitale for counting.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 1d0580e1c8 Fix recording video frame size bug
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 3081b3805e Video is OK
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 4ef6381338 AAC is OK
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma bb3ca01edd Update
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 540a40c2f5 Publishing under dynamatic orientation
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma b086328590 Add recording event handler
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 3a24aaf221 MP4 file muxing
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 281bd83006 Update
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 8a4adc545b Fix bug
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma a4ee06a9de Directory adjustment
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma a987d9bd10 Add MP4Parser library
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 91dac74d9e Modify sea into yasea
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 5ee43c681e Final patch for RTMP timestamp
Extended timestamp in chunk type 3 should not be forgotten.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 9e35f22b7f Fix extended timestamp
Once the extended timestamp is sent, the subsequent extended timestamp
should always be sent.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 848b0763b9 Better interface
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma bbd0e7df2f Add metadata on publishing
Video resolution set method.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 0307650290 Fix key frame interval setting
The unit of the parameter is second(s) not number of frames.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma a9cdb36a66 Fix connection packet format
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 4111df5876 Add property length info to AmfMap writing
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 4ec88b7131 Add video output FPS dectection
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma be1b7d888b Fix type cast bug
In the '_return' of connection, the 'data' property could be amf0 number
type if there is only version field or amf0 object type if there is
special information. We need to probe the type on receiving it.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 18a1358534 Supplement get methods of publisher
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 205e72a234 Complete reset on connetion shutdown
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma e95be5335b Reduce target sdk version for android M (API 23)
Class library Camera could not run on android M.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma d071b6ed8d Retrieve server ip/pid/id on connection if any
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma b5e39cb218 Revert onMetaData sending
That is an issue on Nginx-RTMP. The test showing there is no video stream
downloaded to the player through it with onMetaData function and being all
right without it confuses me quite a lot. Due to some users' complain, I
decide to revert onMetaData in repo and continue research in the future.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 882ce15d3e Fix streaming on nginx-rtmp
Nginx-rtmp module needs extra special AMF0 data including @setDataFrame
string field, onMetaData string field and a null AMF0 null object before
AV streaming.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 71a7e51940 Remove unnessary condition in SrsFlvMuxer stop
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 04c831146d Add event handler for RTMP
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 7281158f1c Fix RTMP packet timestamp marking
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma cc08c9f399 Fix timestamp mark
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 0e2e7e5e80 Connection process synchronization
1. Add timeout in waiting for connection failure.

2. Do not use wall time for timestamp in case of overflow.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma d418715673 Encapsulate `SrsRtmpPublisher` into `SrsRtmpFlv`
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 1178a1be3a Adjust video frame cache size
Just cache GOP / FPS seconds data according to latency.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma d42d01a742 Adjust video frame cache number to GOP x 2
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 6b3920509b Update gradle version
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 6a7bc1afd9 Fix RTMP packet timestamp
Use relative time instead of wall time as packet timestamp.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma d999b08765 Rename
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 4cb3ab0811 Adjust GOP and FPS parameters
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 405eeeb45c Merge branch 'master' of github.com:begeekmyfriend/yasea 9 years ago
Leo Ma 576e6537a2 Generate random RTMP URL to avoid conflict
Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 35e94b86f1 Update README 9 years ago
Leo Ma 56f2be1651 Update README 9 years ago
Leo Ma b8a4455037 Add Android Arsenal badge. Congratulations! 9 years ago
Leo Ma 4662cac158 Update README.md 9 years ago
Leo Ma 624b84b94a Adjust FPS and GOP parameters
GOP indicates the interval frames of I-frames which have larger sizes
than P-frames have. And therefore the larger GOP setting comes with less
bandwidth overhead. For instance, GOP=60 and FPS=15 means every 4 seconds
comes with an I-frame which is better for pictures with less movements.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago
Leo Ma 95902f5ccf Optimization for YUV transformation
Cropping ahead of flipping and rotation.

Signed-off-by: Leo Ma <begeekmyfriend@gmail.com>
9 years ago