Search in sources :

Example 1 with R5AdaptiveBitrateController

use of com.red5pro.streaming.source.R5AdaptiveBitrateController in project streaming-android by red5pro.

the class PublishABRTest method onCreateView.

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View rootView = inflater.inflate(R.layout.publish_test, container, false);
    // Create the configuration from the values.xml
    R5Configuration config = new R5Configuration(R5StreamProtocol.RTSP, TestContent.GetPropertyString("host"), TestContent.GetPropertyInt("port"), TestContent.GetPropertyString("context"), TestContent.GetPropertyFloat("publish_buffer_time"));
    config.setLicenseKey(TestContent.GetPropertyString("license_key"));
    config.setBundleID(getActivity().getPackageName());
    R5Connection connection = new R5Connection(config);
    // setup a new stream using the connection
    publish = new R5Stream(connection);
    publish.audioController.sampleRate = TestContent.GetPropertyInt("sample_rate");
    publish.setListener(this);
    // show all logging
    publish.setLogLevel(R5Stream.LOG_LEVEL_DEBUG);
    R5Camera camera = null;
    if (TestContent.GetPropertyBool("video_on")) {
        // attach a camera video source
        cam = openFrontFacingCameraGingerbread();
        cam.setDisplayOrientation((camOrientation + 180) % 360);
        camera = new R5Camera(cam, TestContent.GetPropertyInt("camera_width"), TestContent.GetPropertyInt("camera_height"));
        camera.setBitrate(TestContent.GetPropertyInt("bitrate"));
        camera.setOrientation(camOrientation);
    }
    R5AdaptiveBitrateController adaptor = new R5AdaptiveBitrateController();
    adaptor.AttachStream(publish);
    if (TestContent.GetPropertyBool("audio_on")) {
        // attach a microphone
        R5Microphone mic = new R5Microphone();
        publish.attachMic(mic);
    }
    preview = (R5VideoView) rootView.findViewById(R.id.videoPreview);
    preview.attachStream(publish);
    if (TestContent.GetPropertyBool("video_on"))
        publish.attachCamera(camera);
    preview.showDebugView(TestContent.GetPropertyBool("debug_view"));
    publish.publish(TestContent.GetPropertyString("stream1"), R5Stream.RecordType.Live);
    if (TestContent.GetPropertyBool("video_on"))
        cam.startPreview();
    return rootView;
}
Also used : R5Camera(com.red5pro.streaming.source.R5Camera) R5Microphone(com.red5pro.streaming.source.R5Microphone) R5Configuration(com.red5pro.streaming.config.R5Configuration) R5Connection(com.red5pro.streaming.R5Connection) R5Stream(com.red5pro.streaming.R5Stream) R5AdaptiveBitrateController(com.red5pro.streaming.source.R5AdaptiveBitrateController) SurfaceView(android.view.SurfaceView) R5VideoView(com.red5pro.streaming.view.R5VideoView) View(android.view.View)

Aggregations

SurfaceView (android.view.SurfaceView)1 View (android.view.View)1 R5Connection (com.red5pro.streaming.R5Connection)1 R5Stream (com.red5pro.streaming.R5Stream)1 R5Configuration (com.red5pro.streaming.config.R5Configuration)1 R5AdaptiveBitrateController (com.red5pro.streaming.source.R5AdaptiveBitrateController)1 R5Camera (com.red5pro.streaming.source.R5Camera)1 R5Microphone (com.red5pro.streaming.source.R5Microphone)1 R5VideoView (com.red5pro.streaming.view.R5VideoView)1