Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
SDK
/
exoplayer
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
20c1ae14
authored
Oct 05, 2022
by
Googler
Committed by
Marc Baechinger
Oct 20, 2022
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Add button to show/hide input player in TransformerActivity
PiperOrigin-RevId: 479003655
parent
0208b1bf
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
47 additions
and
5 deletions
demos/transformer/src/main/java/com/google/android/exoplayer2/transformerdemo/TransformerActivity.java
demos/transformer/src/main/res/layout/transformer_activity.xml
demos/transformer/src/main/res/values/strings.xml
demos/transformer/src/main/java/com/google/android/exoplayer2/transformerdemo/TransformerActivity.java
View file @
20c1ae14
...
...
@@ -31,6 +31,7 @@ import android.view.SurfaceHolder;
import
android.view.SurfaceView
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.widget.Button
;
import
android.widget.TextView
;
import
android.widget.Toast
;
import
androidx.annotation.Nullable
;
...
...
@@ -77,6 +78,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
public
final
class
TransformerActivity
extends
AppCompatActivity
{
private
static
final
String
TAG
=
"TransformerActivity"
;
private
@MonotonicNonNull
Button
displayInputButton
;
private
@MonotonicNonNull
MaterialCardView
inputCardView
;
private
@MonotonicNonNull
StyledPlayerView
inputPlayerView
;
private
@MonotonicNonNull
StyledPlayerView
outputPlayerView
;
...
...
@@ -106,6 +108,8 @@ public final class TransformerActivity extends AppCompatActivity {
progressViewGroup
=
findViewById
(
R
.
id
.
progress_view_group
);
progressIndicator
=
findViewById
(
R
.
id
.
progress_indicator
);
debugFrame
=
findViewById
(
R
.
id
.
debug_aspect_ratio_frame_layout
);
displayInputButton
=
findViewById
(
R
.
id
.
display_input_button
);
displayInputButton
.
setOnClickListener
(
this
::
toggleInputVideoDisplay
);
transformationStopwatch
=
Stopwatch
.
createUnstarted
(
...
...
@@ -130,6 +134,7 @@ public final class TransformerActivity extends AppCompatActivity {
checkNotNull
(
debugTextView
);
checkNotNull
(
progressViewGroup
);
checkNotNull
(
debugFrame
);
checkNotNull
(
displayInputButton
);
startTransformation
();
inputPlayerView
.
onResume
();
...
...
@@ -159,6 +164,7 @@ public final class TransformerActivity extends AppCompatActivity {
"inputCardView"
,
"inputPlayerView"
,
"outputPlayerView"
,
"displayInputButton"
,
"debugTextView"
,
"informationTextView"
,
"progressIndicator"
,
...
...
@@ -228,6 +234,7 @@ public final class TransformerActivity extends AppCompatActivity {
"inputCardView"
,
"inputPlayerView"
,
"outputPlayerView"
,
"displayInputButton"
,
"debugTextView"
,
"informationTextView"
,
"transformationStopwatch"
,
...
...
@@ -464,6 +471,7 @@ public final class TransformerActivity extends AppCompatActivity {
"inputCardView"
,
"inputPlayerView"
,
"outputPlayerView"
,
"displayInputButton"
,
"debugTextView"
,
"informationTextView"
,
"progressViewGroup"
,
...
...
@@ -479,6 +487,7 @@ public final class TransformerActivity extends AppCompatActivity {
debugFrame
.
removeAllViews
();
inputCardView
.
setVisibility
(
View
.
VISIBLE
);
outputPlayerView
.
setVisibility
(
View
.
VISIBLE
);
displayInputButton
.
setVisibility
(
View
.
VISIBLE
);
playMediaItems
(
inputMediaItem
,
MediaItem
.
fromUri
(
"file://"
+
filePath
));
Log
.
d
(
TAG
,
"Output file path: file://"
+
filePath
);
}
...
...
@@ -541,6 +550,21 @@ public final class TransformerActivity extends AppCompatActivity {
Toast
.
makeText
(
getApplicationContext
(),
getString
(
messageResource
),
Toast
.
LENGTH_LONG
).
show
();
}
@RequiresNonNull
({
"inputCardView"
,
"displayInputButton"
,
})
private
void
toggleInputVideoDisplay
(
View
view
)
{
if
(
inputCardView
.
getVisibility
()
==
View
.
GONE
)
{
inputCardView
.
setVisibility
(
View
.
VISIBLE
);
displayInputButton
.
setText
(
getString
(
R
.
string
.
hide_input_video
));
}
else
if
(
inputCardView
.
getVisibility
()
==
View
.
VISIBLE
)
{
checkNotNull
(
inputPlayer
).
pause
();
inputCardView
.
setVisibility
(
View
.
GONE
);
displayInputButton
.
setText
(
getString
(
R
.
string
.
show_input_video
));
}
}
private
final
class
DemoDebugViewProvider
implements
DebugViewProvider
{
private
@MonotonicNonNull
SurfaceView
surfaceView
;
...
...
demos/transformer/src/main/res/layout/transformer_activity.xml
View file @
20c1ae14
...
...
@@ -29,12 +29,28 @@
app:cardElevation=
"2dp"
android:gravity=
"center_vertical"
>
<TextView
android:id=
"@+id/information_text_view"
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
<LinearLayout
android:layout_width=
"match_parent"
android:orientation=
"vertical"
android:padding=
"8dp"
/>
android:layout_height=
"wrap_content"
>
<TextView
android:id=
"@+id/information_text_view"
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
android:padding=
"8dp"
/>
<Button
android:id=
"@+id/display_input_button"
android:visibility=
"gone"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/hide_input_video"
android:layout_margin=
"8dp"
/>
</LinearLayout>
</com.google.android.material.card.MaterialCardView>
...
...
demos/transformer/src/main/res/values/strings.xml
View file @
20c1ae14
...
...
@@ -61,4 +61,6 @@
<string
name=
"lightness_adjustment"
>
Lightness adjustment
</string>
<string
name=
"input_video"
>
Input video:
</string>
<string
name=
"output_video"
>
Output video:
</string>
<string
name=
"hide_input_video"
>
Hide input video
</string>
<string
name=
"show_input_video"
>
Show input video
</string>
</resources>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment