mirror of
https://github.com/samsonjs/media.git
synced 2026-04-27 15:07:40 +00:00
Make getMp4LocationData method inline
PiperOrigin-RevId: 518827223
This commit is contained in:
parent
ecf4d8b891
commit
69cece1d82
13 changed files with 22 additions and 31 deletions
|
|
@ -10,14 +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]
|
container 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]
|
container 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
|
||||||
|
|
|
||||||
|
|
@ -10,7 +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]
|
container metadata = entries=[xyz: latitude=40.68, longitude=-74.5]
|
||||||
format 1:
|
format 1:
|
||||||
peakBitrate = 200000
|
peakBitrate = 200000
|
||||||
id = 2
|
id = 2
|
||||||
|
|
@ -23,7 +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]
|
container 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
|
||||||
|
|
|
||||||
|
|
@ -4,7 +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]
|
container 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
|
||||||
|
|
|
||||||
|
|
@ -10,7 +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]
|
container metadata = entries=[xyz: latitude=40.68, longitude=-74.5]
|
||||||
format 1:
|
format 1:
|
||||||
peakBitrate = 200000
|
peakBitrate = 200000
|
||||||
id = 2
|
id = 2
|
||||||
|
|
@ -23,7 +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]
|
container 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
|
||||||
|
|
|
||||||
|
|
@ -10,7 +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]
|
container metadata = entries=[xyz: latitude=40.68, longitude=-74.5]
|
||||||
sample:
|
sample:
|
||||||
trackIndex = 0
|
trackIndex = 0
|
||||||
dataHashCode = -770308242
|
dataHashCode = -770308242
|
||||||
|
|
|
||||||
|
|
@ -10,7 +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]
|
container 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
|
||||||
|
|
|
||||||
|
|
@ -10,7 +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]
|
container 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
|
||||||
|
|
|
||||||
|
|
@ -10,7 +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]
|
container 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
|
||||||
|
|
|
||||||
|
|
@ -10,7 +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]
|
container 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
|
||||||
|
|
|
||||||
|
|
@ -10,14 +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, value=43700000, smta: captureFrameRate=240.0, svcTemporalLayerCount=4, SlowMotion: segments=[Segment: startTimeMs=88, endTimeMs=879, speedDivisor=2, Segment: startTimeMs=1255, endTimeMs=1970, speedDivisor=8]]
|
container metadata = entries=[mdta: key=com.android.capture.fps, value=43700000, 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]]
|
container 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
|
||||||
|
|
|
||||||
|
|
@ -27,7 +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]]
|
container metadata = entries=[TSSE: description=null: values=[Lavf58.76.100]]
|
||||||
sample:
|
sample:
|
||||||
trackIndex = 1
|
trackIndex = 1
|
||||||
dataHashCode = 620415738
|
dataHashCode = 620415738
|
||||||
|
|
|
||||||
|
|
@ -25,7 +25,6 @@ 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 androidx.media3.common.C;
|
import androidx.media3.common.C;
|
||||||
import androidx.media3.common.Format;
|
import androidx.media3.common.Format;
|
||||||
import androidx.media3.common.Metadata;
|
import androidx.media3.common.Metadata;
|
||||||
|
|
@ -190,9 +189,12 @@ import java.nio.ByteBuffer;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addMetadata(Metadata metadata) {
|
public void addMetadata(Metadata metadata) {
|
||||||
@Nullable Mp4LocationData mp4LocationData = getMp4LocationData(metadata);
|
for (int i = 0; i < metadata.length(); i++) {
|
||||||
if (mp4LocationData != null) {
|
Metadata.Entry entry = metadata.get(i);
|
||||||
mediaMuxer.setLocation(mp4LocationData.latitude, mp4LocationData.longitude);
|
if (entry instanceof Mp4LocationData) {
|
||||||
|
mediaMuxer.setLocation(
|
||||||
|
((Mp4LocationData) entry).latitude, ((Mp4LocationData) entry).longitude);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -267,15 +269,4 @@ 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;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,7 @@ public final class TestMuxer implements Muxer, Dumper.Dumpable {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addMetadata(Metadata metadata) {
|
public void addMetadata(Metadata metadata) {
|
||||||
dumpables.add(dumper -> dumper.add("metadata", metadata));
|
dumpables.add(dumper -> dumper.add("container metadata", metadata));
|
||||||
muxer.addMetadata(metadata);
|
muxer.addMetadata(metadata);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue