23
Embedded Android Real-Time Streaming Optimization

Embedded Android Real-Time Streaming Optimization

Embed Size (px)

Citation preview

Page 1: Embedded Android Real-Time Streaming Optimization

Embedded Android Real-Time Streaming Optimization

Page 2: Embedded Android Real-Time Streaming Optimization

Background

Android Multimedia Framework Optimization

Real-Time Streaming & Playback Optimization

Usage Scenarios

Page 3: Embedded Android Real-Time Streaming Optimization

Courtroom Surveillance System

Courtroom

Page 4: Embedded Android Real-Time Streaming Optimization

Background

Android Multimedia Framework Optimization

Multimedia vs Streaming Media

AwesomePlayer Framework

NuPlayer Framework

Streaming Media Challenges

Page 5: Embedded Android Real-Time Streaming Optimization

Multimedia vs Streaming Media

Multimedia is the integration of multiple forms of media. This includes text, graphics, audio, video

Streaming media is video or audio content sent in compressed form over the Internet and played immediately, rather than being saved to the hard drive.

Page 6: Embedded Android Real-Time Streaming Optimization

DemuxerSource

Video Decoder

Audio Decoder

Video Output

Audio Output

Decoder Output

Multimedia Decoding Process

Page 7: Embedded Android Real-Time Streaming Optimization

Android Multimedia Framework

Page 8: Embedded Android Real-Time Streaming Optimization

awesomeplayer

OMXCODEC

EMPTY_BUFFER_DONE

drainInputBuffer

FILL_BUFFER_DONE

fillOutputBuffer

OMX.Video.Decoder

read

OMX_EmptyThisBuffer OMX_FillThisBuffer

AwesomePlayer Framework

Page 9: Embedded Android Real-Time Streaming Optimization

A

B

Message

1. post message1

2. call B.fun1() 3. post reply

4. call A.func2()

Acodec::onOMXEmptyBufferDone

OMX_EmptyThisBuffer

Message

1. post ACodec::kWhatFillThisBuffer

Nuplayer::feedDecoderInputData

2. call 3. post rely kWhatInputBufferFilled

Acodec::onInputBufferFilled

4. call

5. call

NuPlayer Framework

Page 10: Embedded Android Real-Time Streaming Optimization

Only supports RTSP and HTTP (No RTP/UDP support) Processing Time (Start to Initial Playback) Immediacy Instantaneity Clock drift Fault tolerance Poor Performance (multi-channel surveillance preview) Android Multimedia Player only supports preview/play

(snapshot, record, reply not supported)

Real-Time Streaming & Playback Challenges

Page 11: Embedded Android Real-Time Streaming Optimization

Storage Introduction

Processing Time

Streaming Framework

Fault tolerance

Clock Drift

Immediacy

High Performance

Background

Android Multimedia Framework Optimization

Real-Time Streaming & Playback Optimization

Page 12: Embedded Android Real-Time Streaming Optimization

RTSP Data SourceRTSP Media

Extrator

RTSP Storage

OMXCodec Output

Awesomeplayer

Streaming Framework

Page 13: Embedded Android Real-Time Streaming Optimization

Record

Snapshot

SnapMovie (Real-time monitoring, playback)

Storage Introduction

Page 14: Embedded Android Real-Time Streaming Optimization

Revised OMXCodec operating mode, quick creation of media player clock

Improve RTSP connection procedure

Processing Time

Page 15: Embedded Android Real-Time Streaming Optimization

High speed! It's simple to understand. It is how fast a request can be processed!

Immediacy

Page 16: Embedded Android Real-Time Streaming Optimization

Enhance errors at the receiving end of data, decoder, display side of the fault-tolerant processing

Fault Tolerance

Page 17: Embedded Android Real-Time Streaming Optimization

NTP server

Streaming - Sound Synchronization

Clock Drift

Streaming - No Sound Synchronization

Cloud Server

PC LED Clock Router

Exchange

Data Server

GPS Antenna

GPS Satellite

Clock Server

Page 18: Embedded Android Real-Time Streaming Optimization

High performance RTSP media Completely disable Stagefright

4 frame 720p preview + 8 frame 1080p storage

High Performance I

Page 19: Embedded Android Real-Time Streaming Optimization

8 frame 360p preview + 8 frame 1080p storage

7 frame 270p preview + 1 frame 1080p preview

+ 8 frame 1080p storage

High Performance II

Page 20: Embedded Android Real-Time Streaming Optimization

Background

Android Multimedia Framework Optimization

Real-Time Streaming & Playback Optimization

Usage Scenarios

Page 21: Embedded Android Real-Time Streaming Optimization

Usage Scenarios

Page 22: Embedded Android Real-Time Streaming Optimization

VIA

Strong hardware

capabilities

Powerful

software

development

Customization

Ability to meet customers

detailed requests

Conclusion

Page 23: Embedded Android Real-Time Streaming Optimization

© 2014 VIA Technologies, Inc All Rights Reserved. • VIA reserves the right to make changes in its products without notice in order to improve design or performance characteristics. • This publication neither states nor implies any representations or warranties of any kind, including but not limited to any implied warranty of merchantability or fitness for a particular

purpose. No license, express or implied, to any intellectual property rights is granted by this document. • VIA makes no representations or warranties with respect to the accuracy or completeness of the contents of this publication or the information contained herein, and reserves the right

to make changes at any time, without notice. VIA disclaims responsibility for any consequences resulting from the use of the information included herein. • VIA C7®, VIA C7®-D, VIA C7®-M, and VIA Eden® are trademarks of VIA Technologies, Inc.