/*
* Copyright (C) 2010 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.videoeditor.service;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue;
import android.app.Service;
import android.content.ContentValues;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.graphics.Rect;
import android.media.videoeditor.AudioTrack;
import android.media.videoeditor.Effect;
import android.media.videoeditor.EffectColor;
import android.media.videoeditor.EffectKenBurns;
import android.media.videoeditor.ExtractAudioWaveformProgressListener;
import android.media.videoeditor.MediaImageItem;
import android.media.videoeditor.MediaItem;
import android.media.videoeditor.MediaProperties;
import android.media.videoeditor.MediaVideoItem;
import android.media.videoeditor.Overlay;
import android.media.videoeditor.OverlayFrame;
import android.media.videoeditor.Transition;
import android.media.videoeditor.TransitionAlpha;
import android.media.videoeditor.TransitionCrossfade;
import android.media.videoeditor.TransitionFadeBlack;
import android.media.videoeditor.TransitionSliding;
import android.media.videoeditor.VideoEditor;
import android.media.videoeditor.VideoEditorFactory;
import android.media.videoeditor.WaveformData;
import android.media.videoeditor.MediaItem.GetThumbnailListCallback;
import android.media.videoeditor.VideoEditor.ExportProgressListener;
import android.media.videoeditor.VideoEditor.MediaProcessingProgressListener;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.IBinder;
import android.os.Looper;
import android.provider.MediaStore;
import android.provider.MediaStore.Audio;
import android.provider.MediaStore.Images;
import android.provider.MediaStore.Video;
import android.util.Log;
import com.android.videoeditor.R;
import com.android.videoeditor.util.FileUtils;
import com.android.videoeditor.util.ImageUtils;
import com.android.videoeditor.util.MediaItemUtils;
import com.android.videoeditor.util.StringUtils;
/**
* VideoEditor service API
*/
public class ApiService extends Service {
// Logging
private static final String TAG = "VEApiService";
// Additional updates
public static final int ACTION_UPDATE_FRAME = MediaProcessingProgressListener.ACTION_DECODE + 100;
public static final int ACTION_NO_FRAME_UPDATE = MediaProcessingProgressListener.ACTION_DECODE + 101;
// Parameters
private static final String PARAM_OP = "op";
private static final String PARAM_REQUEST_ID = "rid";
private static final String PARAM_PROJECT_PATH = "project";
private static final String PARAM_FILENAME = "filename";
private static final String PARAM_STORYBOARD_ITEM_ID = "item_id";
private static final String PARAM_RELATIVE_STORYBOARD_ITEM_ID = "r_item_id";
private static final String PARAM_PROGRESS_VALUE = "prog_value";
private static final String PARAM_EXCEPTION = "ex";
private static final String PARAM_START_TIME = "s_time";
private static final String PARAM_END_TIME = "e_time";
private static final String PARAM_DURATION = "duration";
private static final String PARAM_WIDTH = "width";
private static final String PARAM_HEIGHT = "height";
private static final String PARAM_BITRATE = "bitrate";
private static final String PARAM_MEDIA_ITEM_RENDERING_MODE = "rm";
private static final String PARAM_MEDIA_ITEM_START_RECT = "start_rect";
private static final String PARAM_MEDIA_ITEM_END_RECT = "end_rect";
private static final String PARAM_EFFECT_TYPE = "e_type";
private static final String PARAM_EFFECT_PARAM = "e_param";
private static final String PARAM_TRANSITION_BEHAVIOR = "behavior";
private static final String PARAM_TRANSITION_MASK = "t_mask";
private static final String PARAM_TRANSITION_BLENDING = "t_blending";
private static final String PARAM_TRANSITION_INVERT = "t_invert";
private static final String PARAM_TRANSITION_DIRECTION = "t_dir";
private static final String PARAM_INTENT = "req_intent";
private static final String PARAM_PROJECT_NAME = "name";
private static final String PARAM_MOVIES_FILENAMES = "movies";
private static final String PARAM_PHOTOS_FILENAMES = "images";
private static final String PARAM_ASPECT_RATIO = "aspect_ratio";
private static final String PARAM_BEGIN_BOUNDARY = "b_boundary";
private static final String PARAM_END_BOUNDARY = "e_boundary";
private static final String PARAM_ATTRIBUTES = "attributes";
private static final String PARAM_VOLUME = "volume";
private static final String PARAM_LOOP = "loop";
private static final String PARAM_MUTE = "mute";
private static final String PARAM_DUCK = "duck";
private static final String PARAM_MOVIE_URI = "uri";
private static final String PARAM_THEME = "theme";
private static final String PARAM_ACTION = "action";
private static final String PARAM_COUNT = "count";
private static final String PARAM_TOKEN = "token";
private static final String PARAM_INDICES = "indices";
private static final String PARAM_CANCELLED = "cancelled";
// Operations
private static final int OP_VIDEO_EDITOR_CREATE = 1;
private static final int OP_VIDEO_EDITOR_LOAD = 2;
private static final int OP_VIDEO_EDITOR_SAVE = 3;
private static final int OP_VIDEO_EDITOR_EXPORT = 4;
private static final int OP_VIDEO_EDITOR_CANCEL_EXPORT = 5;
private static final int OP_VIDEO_EDITOR_EXPORT_STATUS = 6;
private static final int OP_VIDEO_EDITOR_RELEASE = 8;
private static final int OP_VIDEO_EDITOR_DELETE = 9;
private static final int OP_VIDEO_EDITOR_SET_ASPECT_RATIO = 10;
private static final int OP_VIDEO_EDITOR_APPLY_THEME = 11;
private static final int OP_VIDEO_EDITOR_GENERATE_PREVIEW_PROGRESS = 12;
private static final int OP_VIDEO_EDITOR_LOAD_PROJECTS = 13;
private static final int OP_MEDIA_ITEM_ADD_VIDEO_URI = 100;
private static final int OP_MEDIA_ITEM_ADD_IMAGE_URI = 101;
private static final int OP_MEDIA_ITEM_MOVE = 102;
private static final int OP_MEDIA_ITEM_REMOVE = 103;
private static final int OP_MEDIA_ITEM_SET_RENDERING_MODE = 104;
private static final int OP_MEDIA_ITEM_SET_DURATION = 105;
private static final int OP_MEDIA_ITEM_SET_BOUNDARIES = 106;
private static final int OP_MEDIA_ITEM_SET_VOLUME = 107;
private static final int OP_MEDIA_ITEM_SET_MUTE = 108;
private static final int OP_MEDIA_ITEM_EXTRACT_AUDIO_WAVEFORM = 109;
private static final int OP_MEDIA_ITEM_EXTRACT_AUDIO_WAVEFORM_STATUS = 110;
private static final int OP_MEDIA_ITEM_GET_THUMBNAILS = 112;
private static final int OP_MEDIA_ITEM_LOAD = 113;
private static final int OP_MEDIA_ITEM_LOAD_STATUS = 114;
private static final int OP_EFFECT_ADD_COLOR = 200;
private static final int OP_EFFECT_ADD_IMAGE_KEN_BURNS = 201;
private static final int OP_EFFECT_REMOVE = 202;
private static final int OP_TRANSITION_INSERT_ALPHA =
没有合适的资源?快使用搜索试试~ 我知道了~
Android应用源码之VideoEditor.zip项目安卓应用源码下载
共390个文件
png:208个
xml:119个
java:51个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 72 浏览量
2022-03-08
10:03:55
上传
评论
收藏 6.22MB ZIP 举报
温馨提示
Android应用源码之VideoEditor.zip项目安卓应用源码下载Android应用源码之VideoEditor.zip项目安卓应用源码下载 1.适合学生毕业设计研究参考 2.适合个人学习研究参考 3.适合公司开发项目技术参考
资源推荐
资源详情
资源评论
收起资源包目录
Android应用源码之VideoEditor.zip项目安卓应用源码下载 (390个子文件)
.classpath 354B
HEAD 41B
index 40KB
ApiService.java 199KB
MediaLinearLayout.java 108KB
VideoEditorActivity.java 83KB
VideoEditorProject.java 40KB
OverlayLinearLayout.java 34KB
VideoEditorBaseActivity.java 33KB
AudioTrackLinearLayout.java 24KB
MediaItemView.java 22KB
KenBurnsActivity.java 19KB
ImageUtils.java 17KB
ApiServiceListener.java 16KB
ImageViewTouchBase.java 15KB
MovieMediaItem.java 13KB
ProjectsActivity.java 13KB
MovieAudioTrack.java 12KB
TransitionView.java 12KB
AudioTrackView.java 12KB
ProjectPickerAdapter.java 11KB
MovieTransition.java 11KB
TimelineHorizontalScrollView.java 10KB
FileUtils.java 9KB
ZoomControl.java 9KB
MovieTheme.java 8KB
MovieOverlay.java 8KB
OverlayView.java 7KB
OverlayTitleEditor.java 7KB
ExportOptionsDialog.java 7KB
HandleView.java 7KB
StringUtils.java 6KB
TransitionsActivity.java 6KB
PlayheadView.java 6KB
AlertDialogs.java 6KB
BaseAdapterWithImages.java 6KB
MovieEffect.java 5KB
TransitionType.java 4KB
OverlaysAdapter.java 4KB
ProgressBar.java 4KB
EffectType.java 3KB
TransitionsAdapter.java 3KB
TimelineRelativeLayout.java 3KB
IntentPool.java 2KB
OverlayTitleTemplatePicker.java 2KB
MediaLinearLayoutListener.java 2KB
OverlayType.java 2KB
ScrollViewListener.java 2KB
ItemSimpleGestureListener.java 2KB
PreviewSurfaceView.java 2KB
EditorRelativeLayout.java 2KB
MediaItemUtils.java 2KB
ItemMoveGestureListener.java 1KB
NoSearchActivity.java 861B
mask_diagonal.jpg 36KB
theme_surfing_audio_track.m4a 937KB
theme_travel_audio_track.m4a 935KB
theme_rockandroll_audio_track.m4a 933KB
theme_film_audio_track.m4a 928KB
CleanSpec.mk 2KB
Android.mk 526B
activity_background.png 148KB
effects_gradient.png 103KB
effects_generic.png 90KB
effects_negative.png 89KB
effects_pan_zoom.png 83KB
activity_background.png 77KB
activity_background.png 77KB
buttons_background_zoom.png 71KB
effects_sepia.png 62KB
mask_contour.png 53KB
theme_preview_rock_and_roll.png 52KB
theme_preview_rock_and_roll.png 52KB
theme_preview_travel.png 51KB
theme_preview_travel.png 51KB
theme_preview_surfing.png 51KB
theme_preview_surfing.png 51KB
theme_preview_film.png 50KB
theme_preview_film.png 50KB
overlay_background_2.9.png 49KB
overlay_background_1.9.png 48KB
add_transition_focused.png 48KB
add_transition_focused.png 48KB
add_transition_normal.png 48KB
add_transition_normal.png 48KB
add_transition_pressed.png 48KB
add_transition_pressed.png 48KB
buttons_background.png 45KB
effects_gradient.png 41KB
effects_gradient.png 41KB
effects_negative.png 35KB
effects_negative.png 35KB
effects_generic.png 35KB
effects_generic.png 35KB
effects_pan_zoom.png 34KB
effects_pan_zoom.png 34KB
effects_sepia.png 26KB
effects_sepia.png 26KB
border.png 21KB
buttons_background_zoom.png 17KB
共 390 条
- 1
- 2
- 3
- 4
资源评论
yxkfw
- 粉丝: 81
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功