[FFmpeg-cvslog] oggparsevorbis: support official chapter extension
James Almer
git at videolan.org
Sun Oct 13 08:33:04 CEST 2013
ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Sat Oct 5 21:33:41 2013 +0200| [9c15ef35d404fca2adc31276c1eedb11cf485461] | committer: Anton Khirnov
oggparsevorbis: support official chapter extension
Signed-off-by: James Almer <jamrial at gmail.com>
Signed-off-by: Anton Khirnov <anton at khirnov.net>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9c15ef35d404fca2adc31276c1eedb11cf485461
---
libavformat/oggparsevorbis.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libavformat/oggparsevorbis.c b/libavformat/oggparsevorbis.c
index 1ed75db..8283390 100644
--- a/libavformat/oggparsevorbis.c
+++ b/libavformat/oggparsevorbis.c
@@ -40,10 +40,10 @@ static int ogm_chapter(AVFormatContext *as, uint8_t *key, uint8_t *val)
int i, cnum, h, m, s, ms, keylen = strlen(key);
AVChapter *chapter = NULL;
- if (keylen < 9 || sscanf(key, "CHAPTER%02d", &cnum) != 1)
+ if (keylen < 9 || sscanf(key, "CHAPTER%03d", &cnum) != 1)
return 0;
- if (keylen == 9) {
+ if (keylen <= 10) {
if (sscanf(val, "%02d:%02d:%02d.%03d", &h, &m, &s, &ms) < 4)
return 0;
@@ -51,7 +51,7 @@ static int ogm_chapter(AVFormatContext *as, uint8_t *key, uint8_t *val)
ms + 1000 * (s + 60 * (m + 60 * h)),
AV_NOPTS_VALUE, NULL);
av_free(val);
- } else if (!strcmp(key + 9, "NAME")) {
+ } else if (!strcmp(key + keylen - 4, "NAME")) {
for (i = 0; i < as->nb_chapters; i++)
if (as->chapters[i]->id == cnum) {
chapter = as->chapters[i];
More information about the ffmpeg-cvslog
mailing list