use of com.red5pro.streaming.source.R5Camera in project streaming-android by red5pro.
the class RecordedTest method onCreateView.
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("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.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);
}
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.Record);
if (TestContent.GetPropertyBool("video_on"))
cam.startPreview();
return rootView;
}
use of com.red5pro.streaming.source.R5Camera in project streaming-android by red5pro.
the class PublishCameraSwapTest method onPublishTouch.
private boolean onPublishTouch(MotionEvent e) {
if (e.getAction() == MotionEvent.ACTION_UP && publish != null) {
R5Camera publishCam = (R5Camera) publish.getVideoSource();
Camera newCam = null;
// NOTE: Some devices will throw errors if you have a camera open when you attempt to open another
publishCam.getCamera().stopPreview();
publishCam.getCamera().release();
// NOTE: The front facing camera needs to be 180 degrees further rotated than the back facing camera
int rotate = 0;
if (currentCamMode == Camera.CameraInfo.CAMERA_FACING_FRONT) {
newCam = openBackFacingCameraGingerbread();
rotate = 0;
if (newCam != null)
currentCamMode = Camera.CameraInfo.CAMERA_FACING_BACK;
} else {
newCam = openFrontFacingCameraGingerbread();
rotate = 180;
if (newCam != null)
currentCamMode = Camera.CameraInfo.CAMERA_FACING_FRONT;
}
if (newCam != null) {
newCam.setDisplayOrientation((camOrientation + rotate) % 360);
publishCam.setCamera(newCam);
publishCam.setOrientation(camOrientation);
newCam.startPreview();
}
}
return true;
}
use of com.red5pro.streaming.source.R5Camera in project streaming-android by red5pro.
the class PublishOrientationTest method onPublishTouch.
private boolean onPublishTouch(MotionEvent e) {
if (e.getAction() == MotionEvent.ACTION_UP && publish != null) {
R5Camera publishCam = (R5Camera) publish.getVideoSource();
publishCam.setOrientation(publishCam.getOrientation() + 90);
}
return true;
}
use of com.red5pro.streaming.source.R5Camera in project streaming-android by red5pro.
the class PublishSendTest 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);
camera.setFramerate(TestContent.GetPropertyInt("fps"));
}
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();
preview.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Map<String, String> parms = new HashMap<String, String>();
parms.put("value", "1");
publish.send("onStreamSend", parms);
}
});
return rootView;
}
use of com.red5pro.streaming.source.R5Camera in project streaming-android by red5pro.
the class PublishStreamManagerTest method publishToManager.
private void publishToManager(String url) {
R5Configuration config = new R5Configuration(R5StreamProtocol.RTSP, url, 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);
camera.setFramerate(TestContent.GetPropertyInt("fps"));
}
if (TestContent.GetPropertyBool("audio_on")) {
// attach a microphone
R5Microphone mic = new R5Microphone();
publish.attachMic(mic);
}
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();
edgeShow = new TextView(preview.getContext());
FrameLayout.LayoutParams position = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.BOTTOM);
edgeShow.setLayoutParams(position);
((FrameLayout) preview.getParent()).addView(edgeShow);
edgeShow.setText("Connected to: " + url, TextView.BufferType.NORMAL);
edgeShow.setBackgroundColor(Color.LTGRAY);
}
Aggregations