mirror of
https://github.com/TeamNewPipe/NewPipe.git
synced 2025-10-03 09:49:21 +02:00
Merge 01eea2cc50
into fd3f030d0b
This commit is contained in:
commit
2451200e1c
1 changed files with 8 additions and 4 deletions
|
@ -185,9 +185,13 @@ public class Mp4FromDashWriter {
|
||||||
Mp4DashChunk chunk;
|
Mp4DashChunk chunk;
|
||||||
while ((chunk = readers[i].getNextChunk(true)) != null) {
|
while ((chunk = readers[i].getNextChunk(true)) != null) {
|
||||||
|
|
||||||
if (defaultMediaTime[i] < 1 && chunk.moof.traf.tfhd.defaultSampleDuration > 0) {
|
if (defaultMediaTime[i] < 1) {
|
||||||
|
if (chunk.moof.traf.tfdt > 0) {
|
||||||
|
defaultMediaTime[i] = (int) chunk.moof.traf.tfdt;
|
||||||
|
} else if (chunk.moof.traf.tfhd.defaultSampleDuration > 0) {
|
||||||
defaultMediaTime[i] = chunk.moof.traf.tfhd.defaultSampleDuration;
|
defaultMediaTime[i] = chunk.moof.traf.tfhd.defaultSampleDuration;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
read += chunk.moof.traf.trun.chunkSize;
|
read += chunk.moof.traf.trun.chunkSize;
|
||||||
sampleExtra[i] += chunk.moof.traf.trun.chunkDuration; // calculate track duration
|
sampleExtra[i] += chunk.moof.traf.trun.chunkDuration; // calculate track duration
|
||||||
|
@ -763,8 +767,8 @@ public class Mp4FromDashWriter {
|
||||||
final int mediaTime;
|
final int mediaTime;
|
||||||
|
|
||||||
if (tracks[index].trak.edstElst == null) {
|
if (tracks[index].trak.edstElst == null) {
|
||||||
// is a audio track ¿is edst/elst optional for audio tracks?
|
// there is no edit list, use the first decode timestamp as start time
|
||||||
mediaTime = 0x00; // ffmpeg set this value as zero, instead of defaultMediaTime
|
mediaTime = defaultMediaTime;
|
||||||
bMediaRate = 0x00010000;
|
bMediaRate = 0x00010000;
|
||||||
} else {
|
} else {
|
||||||
mediaTime = (int) tracks[index].trak.edstElst.mediaTime;
|
mediaTime = (int) tracks[index].trak.edstElst.mediaTime;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue