'android videoplay'에 해당되는 글 2건

  1. 2013.02.04 Android - Video ( 동영상촬영 용량제한 시간제한 ) (1)
  2. 2011.10.20 Android - Video play (온라인상 동영상 재생)

Android - Video ( 동영상촬영 용량제한 시간제한 )

Android 2013.02.04 14:07

안녕하세요 ~

오늘은 동영상 촬영을 할 때 시간제한용량제한을 거는 프로젝트를 해보겠습니다.

 

채팅어플이나 기타 동영상촬영 어플을 봤을 때 제한된 용량을 벗어나면 보낼 수 없게 되는데요.

보낼 수 있게 제한을 걸어 두는 방법이라고 생각하시면 되겠네요.

 

자신이 원하는 시간만큼이나 자신이 원하는 용량만큼 동영상 촬영이 되고 자신이 원하는 디렉토리에 저장되는 것을 해보겠습니다.

 

필요한 세가지를 보고 넘어 가겠습니다.

 

첫번째 시간제한

intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, 시간적는 곳);

 

두번째 용량제한

intent.putExtra(MediaStore.EXTRA_SIZE_LIMIT, (long) (용량적는 곳));

 

세번째 저장할 파일디렉토리

intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, 파일디렉토리경로적는 곳);

 

필요한 인자 값을 원하는 값으로 넣어서 실행해 주시면 되겠습니다.

 

 

프로젝트는 버튼 하나만 추가하고 내장 카메라를 불러와 동영상 촬영을 하되 제한을 걸어 실행해보겠습니다.

이프로젝트에서는 시간은 9999로 맞쳐놓고 용량 4메라고 맞쳐서 용량이 되면 자동적으로 촬영을 멈추고 저장하는 화면으로 넘어가는 것을 살펴보겠습니다.

 

 

 

프로젝트명 : videoexam1

패키지명 : com.example.videoexam1

클래스파일 : Page_main

XML파일 : page_main

타겟 : 2.2 ~ 4.2

추가할퍼미션 :    

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CAMERA"/>

 

 

Page_main.java

 

Page_main.java

 

package com.example.videoexam1;

import android.os.Bundle;
import android.provider.MediaStore;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.Button;

public class Page_main extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.page_main);

Button bt1 = (Button) findViewById(R.id.button1);
bt1.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub

//내장카메라 호출
Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
//동영상 품질
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0);
//동영상 시간 제한
intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, 111);// 시간
//동영상 용량 제한
intent.putExtra(MediaStore.EXTRA_SIZE_LIMIT, (long) (1024 * 1024 * 4));// 용량
//동영상 저장 경로
String mImageMovieUri = "/sdcard/Download/exam/";
intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT,
mImageMovieUri);
startActivityForResult(intent, 2);

}
});

}

}

 

page_main.xml

 

page_main.xml

 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".Page_main" >

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:text="Button" />

</RelativeLayout>

 

 

실행화면

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

정해진 용량만큼 촬영되고 종료되는 것을 볼 수 있습니다.

 

많은 응용 바랍니다. 문의는 댓글로 ~

 

 

 

저작자 표시
신고
Trackback 1 : Comment 1
  1. 2014.07.05 23:46 신고 Modify/Delete Reply

    좋은 정보 감사해요 안드로이드에 관한 글이 많네요^^
    잘활용하겠습니다.

Write a comment


Android - Video play (온라인상 동영상 재생)

Android 2011.10.20 20:53
첫번째로 동영상을 첨부해서 직접 VideoView도구를 사용하여서 재생하는 것을 살펴보았습니다.
이번에 살펴볼 내용은 온라인상에 있는 동영상 주소를 통해서
동영상을 재생하는 것을 살펴보겠습니다.

VideoView도구를 쓰지 않고 버튼 클릭으로 동영상주소를 불러와서 바로 실행하는 것입니다.
연결만 해주면 기본적인 안드로이드 비디오재생 툴로 재생이 바로 됩니다.

Intent를 사용하는데요.
Intent에 대한 설명은 액티비티 이동에 잠깐 설명해놓았습니다.

여기서는
Intent(Intent.ACTION_VIEW) 를 사용하여서 동영상을 실행합니다.

그럼 실습을 통해서 살펴보겠습니다.


프로젝트 생성

Project name : ExamActivity
Build Target : Android 2.1
Package name : jsh.exam.activity
Create Activity : main
Min SDK Version : 7



src

main.java

package jsh.exam.video;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class main extends Activity implements OnClickListener{
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        //버튼 선언
        Button bt1 = (Button) findViewById (R.id.button1);
       
        //버튼 이벤트처리
        bt1.setOnClickListener(this);
    }

 @Override
 public void onClick(View arg0) {
  // TODO Auto-generated method stub
  
  //뷰 인텐트 사용
  Intent it = new Intent(Intent.ACTION_VIEW);
  //재생할 동영상 주소
  Uri uri = Uri.parse("실행할 온라인상 동영상주소");
  //재생할 동영상주소와 동영상코덱 설정
  it.setDataAndType(uri, "video/mp4");
  //액티비티 실행
  startActivity(it);
  
  
  
 }
}



res

main.xml



<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
 xmlns:android="
http://schemas.android.com/apk/res/android"
 android:orientation="vertical"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent">
 <Button
  android:text="Button"
  android:id="@+id/button1"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"></Button>
</LinearLayout>


실행결과

 

 

저작자 표시
신고
Trackback 0 : Comment 0

Write a comment