mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-24 13:56:33 +02:00
Merge commit 'e352520e3ed7f08f19e63cd60e95da6bb6f037c1'
* commit 'e352520e3ed7f08f19e63cd60e95da6bb6f037c1': oma: Report a timestamp Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
7474ea7495
@ -47,6 +47,7 @@
|
||||
#include "internal.h"
|
||||
#include "libavutil/intreadwrite.h"
|
||||
#include "libavutil/des.h"
|
||||
#include "libavutil/mathematics.h"
|
||||
#include "oma.h"
|
||||
#include "pcm.h"
|
||||
#include "id3v2.h"
|
||||
@ -412,9 +413,12 @@ static int oma_read_header(AVFormatContext *s)
|
||||
|
||||
static int oma_read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
{
|
||||
OMAContext *oc = s->priv_data;
|
||||
int packet_size = s->streams[0]->codec->block_align;
|
||||
int ret = av_get_packet(s->pb, pkt, packet_size);
|
||||
OMAContext *oc = s->priv_data;
|
||||
AVStream *st = s->streams[0];
|
||||
int packet_size = st->codec->block_align;
|
||||
int byte_rate = st->codec->bit_rate >> 3;
|
||||
int64_t pos = avio_tell(s->pb);
|
||||
int ret = av_get_packet(s->pb, pkt, packet_size);
|
||||
|
||||
if (ret < packet_size)
|
||||
pkt->flags |= AV_PKT_FLAG_CORRUPT;
|
||||
@ -426,6 +430,12 @@ static int oma_read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||
|
||||
pkt->stream_index = 0;
|
||||
|
||||
if (pos > 0) {
|
||||
pkt->pts =
|
||||
pkt->dts = av_rescale(pos, st->time_base.den,
|
||||
byte_rate * (int64_t)st->time_base.num);
|
||||
}
|
||||
|
||||
if (oc->encrypted) {
|
||||
/* previous unencrypted block saved in IV for
|
||||
* the next packet (CBC mode) */
|
||||
|
Loading…
x
Reference in New Issue
Block a user