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
d579ccfd
authored
Mar 13, 2023
by
sheenachhabra
Committed by
tonihei
Mar 14, 2023
Browse files
Options
_('Browse Files')
Download
Email Patches
Plain Diff
Remove setLocation() method from Muxer interface
PiperOrigin-RevId: 516314175
parent
44cf5735
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
60 additions
and
46 deletions
library/transformer/src/main/java/com/google/android/exoplayer2/transformer/DefaultMuxer.java
library/transformer/src/main/java/com/google/android/exoplayer2/transformer/FrameworkMuxer.java
library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Muxer.java
library/transformer/src/main/java/com/google/android/exoplayer2/transformer/MuxerWrapper.java
library/transformer/src/test/java/com/google/android/exoplayer2/transformer/TestMuxer.java
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.48000hz.dump
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.concatenated.dump
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.concatenated_with_high_pitch_and_no_video.dump
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.dump
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.noaudio.dump
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.novideo.dump
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.silence_then_audio.dump
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.silence_then_audio_with_effects.dump
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.silentaudio.dump
testdata/src/test/assets/transformerdumps/mp4/sample_sef_slow_motion.mp4.dump
testdata/src/test/assets/transformerdumps/mp4/sample_with_increasing_timestamps_320w_240h.mp4.clipped.dump
library/transformer/src/main/java/com/google/android/exoplayer2/transformer/DefaultMuxer.java
View file @
d579ccfd
...
@@ -17,6 +17,7 @@ package com.google.android.exoplayer2.transformer;
...
@@ -17,6 +17,7 @@ package com.google.android.exoplayer2.transformer;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.metadata.Metadata
;
import
com.google.common.collect.ImmutableList
;
import
com.google.common.collect.ImmutableList
;
import
java.nio.ByteBuffer
;
import
java.nio.ByteBuffer
;
...
@@ -77,11 +78,6 @@ public final class DefaultMuxer implements Muxer {
...
@@ -77,11 +78,6 @@ public final class DefaultMuxer implements Muxer {
}
}
@Override
@Override
public
void
setLocation
(
float
latitude
,
float
longitude
)
{
this
.
muxer
.
setLocation
(
latitude
,
longitude
);
}
@Override
public
int
addTrack
(
Format
format
)
throws
MuxerException
{
public
int
addTrack
(
Format
format
)
throws
MuxerException
{
return
muxer
.
addTrack
(
format
);
return
muxer
.
addTrack
(
format
);
}
}
...
@@ -94,6 +90,11 @@ public final class DefaultMuxer implements Muxer {
...
@@ -94,6 +90,11 @@ public final class DefaultMuxer implements Muxer {
}
}
@Override
@Override
public
void
addMetadata
(
Metadata
metadata
)
{
muxer
.
addMetadata
(
metadata
);
}
@Override
public
void
release
(
boolean
forCancellation
)
throws
MuxerException
{
public
void
release
(
boolean
forCancellation
)
throws
MuxerException
{
muxer
.
release
(
forCancellation
);
muxer
.
release
(
forCancellation
);
}
}
...
...
library/transformer/src/main/java/com/google/android/exoplayer2/transformer/FrameworkMuxer.java
View file @
d579ccfd
...
@@ -25,8 +25,11 @@ import android.media.MediaCodec;
...
@@ -25,8 +25,11 @@ import android.media.MediaCodec;
import
android.media.MediaFormat
;
import
android.media.MediaFormat
;
import
android.media.MediaMuxer
;
import
android.media.MediaMuxer
;
import
android.util.SparseLongArray
;
import
android.util.SparseLongArray
;
import
androidx.annotation.Nullable
;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.metadata.Metadata
;
import
com.google.android.exoplayer2.metadata.mp4.Mp4LocationData
;
import
com.google.android.exoplayer2.util.MediaFormatUtil
;
import
com.google.android.exoplayer2.util.MediaFormatUtil
;
import
com.google.android.exoplayer2.util.MimeTypes
;
import
com.google.android.exoplayer2.util.MimeTypes
;
import
com.google.android.exoplayer2.util.Util
;
import
com.google.android.exoplayer2.util.Util
;
...
@@ -105,11 +108,6 @@ import java.nio.ByteBuffer;
...
@@ -105,11 +108,6 @@ import java.nio.ByteBuffer;
}
}
@Override
@Override
public
void
setLocation
(
float
latitude
,
float
longitude
)
{
mediaMuxer
.
setLocation
(
latitude
,
longitude
);
}
@Override
public
int
addTrack
(
Format
format
)
throws
MuxerException
{
public
int
addTrack
(
Format
format
)
throws
MuxerException
{
String
sampleMimeType
=
checkNotNull
(
format
.
sampleMimeType
);
String
sampleMimeType
=
checkNotNull
(
format
.
sampleMimeType
);
MediaFormat
mediaFormat
;
MediaFormat
mediaFormat
;
...
@@ -191,6 +189,14 @@ import java.nio.ByteBuffer;
...
@@ -191,6 +189,14 @@ import java.nio.ByteBuffer;
}
}
@Override
@Override
public
void
addMetadata
(
Metadata
metadata
)
{
@Nullable
Mp4LocationData
mp4LocationData
=
getMp4LocationData
(
metadata
);
if
(
mp4LocationData
!=
null
)
{
mediaMuxer
.
setLocation
(
mp4LocationData
.
latitude
,
mp4LocationData
.
longitude
);
}
}
@Override
public
void
release
(
boolean
forCancellation
)
throws
MuxerException
{
public
void
release
(
boolean
forCancellation
)
throws
MuxerException
{
if
(!
isStarted
)
{
if
(!
isStarted
)
{
mediaMuxer
.
release
();
mediaMuxer
.
release
();
...
@@ -261,4 +267,15 @@ import java.nio.ByteBuffer;
...
@@ -261,4 +267,15 @@ import java.nio.ByteBuffer;
throw
e
;
throw
e
;
}
}
}
}
@Nullable
private
static
Mp4LocationData
getMp4LocationData
(
Metadata
metadata
)
{
for
(
int
i
=
0
;
i
<
metadata
.
length
();
i
++)
{
Metadata
.
Entry
entry
=
metadata
.
get
(
i
);
if
(
entry
instanceof
Mp4LocationData
)
{
return
(
Mp4LocationData
)
entry
;
}
}
return
null
;
}
}
}
library/transformer/src/main/java/com/google/android/exoplayer2/transformer/Muxer.java
View file @
d579ccfd
...
@@ -17,6 +17,7 @@ package com.google.android.exoplayer2.transformer;
...
@@ -17,6 +17,7 @@ package com.google.android.exoplayer2.transformer;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.metadata.Metadata
;
import
com.google.android.exoplayer2.util.MimeTypes
;
import
com.google.android.exoplayer2.util.MimeTypes
;
import
com.google.common.collect.ImmutableList
;
import
com.google.common.collect.ImmutableList
;
import
java.nio.ByteBuffer
;
import
java.nio.ByteBuffer
;
...
@@ -64,14 +65,6 @@ public interface Muxer {
...
@@ -64,14 +65,6 @@ public interface Muxer {
}
}
/**
/**
* Sets the location.
*
* @param latitude The latitude, in degrees. Its value must be in the range [-90, 90].
* @param longitude The longitude, in degrees. Its value must be in the range [-180, 180].
*/
void
setLocation
(
float
latitude
,
float
longitude
);
/**
* Adds a track with the specified format.
* Adds a track with the specified format.
*
*
* @param format The {@link Format} of the track.
* @param format The {@link Format} of the track.
...
@@ -94,6 +87,9 @@ public interface Muxer {
...
@@ -94,6 +87,9 @@ public interface Muxer {
int
trackIndex
,
ByteBuffer
data
,
long
presentationTimeUs
,
@C
.
BufferFlags
int
flags
)
int
trackIndex
,
ByteBuffer
data
,
long
presentationTimeUs
,
@C
.
BufferFlags
int
flags
)
throws
MuxerException
;
throws
MuxerException
;
/** Adds {@link Metadata} about the output file. */
void
addMetadata
(
Metadata
metadata
);
/**
/**
* Finishes writing the output and releases any resources associated with muxing.
* Finishes writing the output and releases any resources associated with muxing.
*
*
...
...
library/transformer/src/main/java/com/google/android/exoplayer2/transformer/MuxerWrapper.java
View file @
d579ccfd
...
@@ -28,7 +28,6 @@ import androidx.annotation.Nullable;
...
@@ -28,7 +28,6 @@ import androidx.annotation.Nullable;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.metadata.Metadata
;
import
com.google.android.exoplayer2.metadata.Metadata
;
import
com.google.android.exoplayer2.metadata.mp4.Mp4LocationData
;
import
com.google.android.exoplayer2.util.MimeTypes
;
import
com.google.android.exoplayer2.util.MimeTypes
;
import
com.google.android.exoplayer2.util.Util
;
import
com.google.android.exoplayer2.util.Util
;
import
com.google.common.collect.ImmutableList
;
import
com.google.common.collect.ImmutableList
;
...
@@ -131,8 +130,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
...
@@ -131,8 +130,7 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
* and all the formats must be added before any samples can be {@linkplain #writeSample(int,
* and all the formats must be added before any samples can be {@linkplain #writeSample(int,
* ByteBuffer, boolean, long) written}.
* ByteBuffer, boolean, long) written}.
*
*
* <p>If the {@link Format#metadata} contains {@link Mp4LocationData}, then it will be added to
* <p>{@link Muxer#addMetadata(Metadata)} is called if the {@link Format#metadata} is present.
* the muxer.
*
*
* @param format The {@link Format} to be added.
* @param format The {@link Format} to be added.
* @throws IllegalArgumentException If the format is unsupported.
* @throws IllegalArgumentException If the format is unsupported.
...
@@ -160,15 +158,15 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
...
@@ -160,15 +158,15 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
TrackInfo
trackInfo
=
new
TrackInfo
(
format
,
muxer
.
addTrack
(
format
));
TrackInfo
trackInfo
=
new
TrackInfo
(
format
,
muxer
.
addTrack
(
format
));
trackTypeToInfo
.
put
(
trackType
,
trackInfo
);
trackTypeToInfo
.
put
(
trackType
,
trackInfo
);
if
(
format
.
metadata
!=
null
)
{
muxer
.
addMetadata
(
format
.
metadata
);
}
if
(
trackTypeToInfo
.
size
()
==
trackCount
)
{
if
(
trackTypeToInfo
.
size
()
==
trackCount
)
{
isReady
=
true
;
isReady
=
true
;
resetAbortTimer
();
resetAbortTimer
();
}
}
@Nullable
Mp4LocationData
mp4LocationData
=
extractMp4LocationData
(
format
);
if
(
mp4LocationData
!=
null
)
{
muxer
.
setLocation
(
mp4LocationData
.
latitude
,
mp4LocationData
.
longitude
);
}
}
}
/**
/**
...
@@ -338,21 +336,6 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
...
@@ -338,21 +336,6 @@ import org.checkerframework.checker.nullness.qual.RequiresNonNull;
return
trackInfoWithMinTimeUs
;
return
trackInfoWithMinTimeUs
;
}
}
@Nullable
private
static
Mp4LocationData
extractMp4LocationData
(
Format
format
)
{
if
(
format
.
metadata
==
null
)
{
return
null
;
}
for
(
int
i
=
0
;
i
<
format
.
metadata
.
length
();
i
++)
{
Metadata
.
Entry
entry
=
format
.
metadata
.
get
(
i
);
if
(
entry
instanceof
Mp4LocationData
)
{
return
(
Mp4LocationData
)
entry
;
}
}
return
null
;
}
private
static
final
class
TrackInfo
{
private
static
final
class
TrackInfo
{
public
final
Format
format
;
public
final
Format
format
;
public
final
int
index
;
public
final
int
index
;
...
...
library/transformer/src/test/java/com/google/android/exoplayer2/transformer/TestMuxer.java
View file @
d579ccfd
...
@@ -17,6 +17,7 @@ package com.google.android.exoplayer2.transformer;
...
@@ -17,6 +17,7 @@ package com.google.android.exoplayer2.transformer;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.C
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.Format
;
import
com.google.android.exoplayer2.metadata.Metadata
;
import
com.google.android.exoplayer2.testutil.DumpableFormat
;
import
com.google.android.exoplayer2.testutil.DumpableFormat
;
import
com.google.android.exoplayer2.testutil.Dumper
;
import
com.google.android.exoplayer2.testutil.Dumper
;
import
java.nio.ByteBuffer
;
import
java.nio.ByteBuffer
;
...
@@ -43,11 +44,6 @@ public final class TestMuxer implements Muxer, Dumper.Dumpable {
...
@@ -43,11 +44,6 @@ public final class TestMuxer implements Muxer, Dumper.Dumpable {
// Muxer implementation.
// Muxer implementation.
@Override
@Override
public
void
setLocation
(
float
latitude
,
float
longitude
)
{
muxer
.
setLocation
(
latitude
,
longitude
);
}
@Override
public
int
addTrack
(
Format
format
)
throws
MuxerException
{
public
int
addTrack
(
Format
format
)
throws
MuxerException
{
int
trackIndex
=
muxer
.
addTrack
(
format
);
int
trackIndex
=
muxer
.
addTrack
(
format
);
dumpables
.
add
(
new
DumpableFormat
(
format
,
trackIndex
));
dumpables
.
add
(
new
DumpableFormat
(
format
,
trackIndex
));
...
@@ -68,6 +64,12 @@ public final class TestMuxer implements Muxer, Dumper.Dumpable {
...
@@ -68,6 +64,12 @@ public final class TestMuxer implements Muxer, Dumper.Dumpable {
}
}
@Override
@Override
public
void
addMetadata
(
Metadata
metadata
)
{
dumpables
.
add
(
dumper
->
dumper
.
add
(
"metadata"
,
metadata
));
muxer
.
addMetadata
(
metadata
);
}
@Override
public
void
release
(
boolean
forCancellation
)
throws
MuxerException
{
public
void
release
(
boolean
forCancellation
)
throws
MuxerException
{
dumpables
.
add
(
dumper
->
dumper
.
add
(
"released"
,
true
));
dumpables
.
add
(
dumper
->
dumper
.
add
(
"released"
,
true
));
muxer
.
release
(
forCancellation
);
muxer
.
release
(
forCancellation
);
...
...
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.48000hz.dump
View file @
d579ccfd
...
@@ -10,12 +10,14 @@ format 0:
...
@@ -10,12 +10,14 @@ format 0:
initializationData:
initializationData:
data = length 29, hash 4746B5D9
data = length 29, hash 4746B5D9
data = length 10, hash 7A0D0F2B
data = length 10, hash 7A0D0F2B
metadata = entries=[xyz: latitude=40.68 longitude=-74.5]
format 1:
format 1:
sampleMimeType = audio/mp4a-latm
sampleMimeType = audio/mp4a-latm
channelCount = 1
channelCount = 1
sampleRate = 48000
sampleRate = 48000
pcmEncoding = 2
pcmEncoding = 2
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
sample:
sample:
trackIndex = 1
trackIndex = 1
dataHashCode = 1868041800
dataHashCode = 1868041800
...
...
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.concatenated.dump
View file @
d579ccfd
...
@@ -10,6 +10,7 @@ format 0:
...
@@ -10,6 +10,7 @@ format 0:
initializationData:
initializationData:
data = length 29, hash 4746B5D9
data = length 29, hash 4746B5D9
data = length 10, hash 7A0D0F2B
data = length 10, hash 7A0D0F2B
metadata = entries=[xyz: latitude=40.68 longitude=-74.5]
format 1:
format 1:
peakBitrate = 200000
peakBitrate = 200000
id = 2
id = 2
...
@@ -22,6 +23,7 @@ format 1:
...
@@ -22,6 +23,7 @@ format 1:
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
initializationData:
initializationData:
data = length 2, hash 5F7
data = length 2, hash 5F7
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
sample:
sample:
trackIndex = 1
trackIndex = 1
dataHashCode = 1205768497
dataHashCode = 1205768497
...
...
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.concatenated_with_high_pitch_and_no_video.dump
View file @
d579ccfd
...
@@ -4,6 +4,7 @@ format 0:
...
@@ -4,6 +4,7 @@ format 0:
sampleRate = 44100
sampleRate = 44100
pcmEncoding = 2
pcmEncoding = 2
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
sample:
sample:
trackIndex = 0
trackIndex = 0
dataHashCode = 915609509
dataHashCode = 915609509
...
...
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.dump
View file @
d579ccfd
...
@@ -10,6 +10,7 @@ format 0:
...
@@ -10,6 +10,7 @@ format 0:
initializationData:
initializationData:
data = length 29, hash 4746B5D9
data = length 29, hash 4746B5D9
data = length 10, hash 7A0D0F2B
data = length 10, hash 7A0D0F2B
metadata = entries=[xyz: latitude=40.68 longitude=-74.5]
format 1:
format 1:
peakBitrate = 200000
peakBitrate = 200000
id = 2
id = 2
...
@@ -22,6 +23,7 @@ format 1:
...
@@ -22,6 +23,7 @@ format 1:
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
initializationData:
initializationData:
data = length 2, hash 5F7
data = length 2, hash 5F7
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
sample:
sample:
trackIndex = 1
trackIndex = 1
dataHashCode = 1205768497
dataHashCode = 1205768497
...
...
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.noaudio.dump
View file @
d579ccfd
...
@@ -10,6 +10,7 @@ format 0:
...
@@ -10,6 +10,7 @@ format 0:
initializationData:
initializationData:
data = length 29, hash 4746B5D9
data = length 29, hash 4746B5D9
data = length 10, hash 7A0D0F2B
data = length 10, hash 7A0D0F2B
metadata = entries=[xyz: latitude=40.68 longitude=-74.5]
sample:
sample:
trackIndex = 0
trackIndex = 0
dataHashCode = -770308242
dataHashCode = -770308242
...
...
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.novideo.dump
View file @
d579ccfd
...
@@ -10,6 +10,7 @@ format 0:
...
@@ -10,6 +10,7 @@ format 0:
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
initializationData:
initializationData:
data = length 2, hash 5F7
data = length 2, hash 5F7
metadata = entries=[TSSE: description=null: values=[Lavf56.1.0], xyz: latitude=40.68 longitude=-74.5]
sample:
sample:
trackIndex = 0
trackIndex = 0
dataHashCode = 1205768497
dataHashCode = 1205768497
...
...
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.silence_then_audio.dump
View file @
d579ccfd
...
@@ -10,6 +10,7 @@ format 0:
...
@@ -10,6 +10,7 @@ format 0:
initializationData:
initializationData:
data = length 29, hash 4746B5D9
data = length 29, hash 4746B5D9
data = length 10, hash 7A0D0F2B
data = length 10, hash 7A0D0F2B
metadata = entries=[xyz: latitude=40.68 longitude=-74.5]
format 1:
format 1:
sampleMimeType = audio/mp4a-latm
sampleMimeType = audio/mp4a-latm
channelCount = 2
channelCount = 2
...
...
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.silence_then_audio_with_effects.dump
View file @
d579ccfd
...
@@ -10,6 +10,7 @@ format 0:
...
@@ -10,6 +10,7 @@ format 0:
initializationData:
initializationData:
data = length 29, hash 4746B5D9
data = length 29, hash 4746B5D9
data = length 10, hash 7A0D0F2B
data = length 10, hash 7A0D0F2B
metadata = entries=[xyz: latitude=40.68 longitude=-74.5]
format 1:
format 1:
sampleMimeType = audio/mp4a-latm
sampleMimeType = audio/mp4a-latm
channelCount = 2
channelCount = 2
...
...
testdata/src/test/assets/transformerdumps/mp4/sample.mp4.silentaudio.dump
View file @
d579ccfd
...
@@ -10,6 +10,7 @@ format 0:
...
@@ -10,6 +10,7 @@ format 0:
initializationData:
initializationData:
data = length 29, hash 4746B5D9
data = length 29, hash 4746B5D9
data = length 10, hash 7A0D0F2B
data = length 10, hash 7A0D0F2B
metadata = entries=[xyz: latitude=40.68 longitude=-74.5]
format 1:
format 1:
sampleMimeType = audio/mp4a-latm
sampleMimeType = audio/mp4a-latm
channelCount = 2
channelCount = 2
...
...
testdata/src/test/assets/transformerdumps/mp4/sample_sef_slow_motion.mp4.dump
View file @
d579ccfd
...
@@ -10,12 +10,14 @@ format 0:
...
@@ -10,12 +10,14 @@ format 0:
initializationData:
initializationData:
data = length 33, hash D3FB879D
data = length 33, hash D3FB879D
data = length 10, hash 7A0D0F2B
data = length 10, hash 7A0D0F2B
metadata = entries=[mdta: key=com.android.capture.fps, smta: captureFrameRate=240.0, svcTemporalLayerCount=4, SlowMotion: segments=[Segment: startTimeMs=88, endTimeMs=879, speedDivisor=2, Segment: startTimeMs=1255, endTimeMs=1970, speedDivisor=8]]
format 1:
format 1:
sampleMimeType = audio/mp4a-latm
sampleMimeType = audio/mp4a-latm
channelCount = 2
channelCount = 2
sampleRate = 12000
sampleRate = 12000
pcmEncoding = 2
pcmEncoding = 2
metadata = entries=[smta: captureFrameRate=240.0, svcTemporalLayerCount=4, SlowMotion: segments=[Segment: startTimeMs=88, endTimeMs=879, speedDivisor=2, Segment: startTimeMs=1255, endTimeMs=1970, speedDivisor=8]]
metadata = entries=[smta: captureFrameRate=240.0, svcTemporalLayerCount=4, SlowMotion: segments=[Segment: startTimeMs=88, endTimeMs=879, speedDivisor=2, Segment: startTimeMs=1255, endTimeMs=1970, speedDivisor=8]]
metadata = entries=[smta: captureFrameRate=240.0, svcTemporalLayerCount=4, SlowMotion: segments=[Segment: startTimeMs=88, endTimeMs=879, speedDivisor=2, Segment: startTimeMs=1255, endTimeMs=1970, speedDivisor=8]]
sample:
sample:
trackIndex = 1
trackIndex = 1
dataHashCode = -212376212
dataHashCode = -212376212
...
...
testdata/src/test/assets/transformerdumps/mp4/sample_with_increasing_timestamps_320w_240h.mp4.clipped.dump
View file @
d579ccfd
...
@@ -27,6 +27,7 @@ format 1:
...
@@ -27,6 +27,7 @@ format 1:
metadata = entries=[TSSE: description=null: values=[Lavf58.76.100]]
metadata = entries=[TSSE: description=null: values=[Lavf58.76.100]]
initializationData:
initializationData:
data = length 2, hash 560
data = length 2, hash 560
metadata = entries=[TSSE: description=null: values=[Lavf58.76.100]]
sample:
sample:
trackIndex = 1
trackIndex = 1
dataHashCode = 620415738
dataHashCode = 620415738
...
...
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