Opened 13 years ago
Last modified 12 years ago
#1043 open enhancement
add support for Predefined SLConfigDescriptor
Reported by: | Mark | Owned by: | |
---|---|---|---|
Priority: | wish | Component: | avformat |
Version: | git-master | Keywords: | mpegts |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
Hi all,
I got the following output from the latest win32 static build from Zeranoes ffmpeg-git-a4c22e3-win32-static.7z (dated 2012-02-27) (upgrading from ffmpeg version git-N-30698-g39dbe9b, built on Jun 10 2011 22:10:00 with gcc 4.5.3), and also from my win32 build of FFmpeg (using the latest git version).
A search backward from this point (not extensive) revealed the problem is NOT in ffmpeg-0.7.1-win32-static, ffmpeg-0.8-win32-static, ffmpeg-git-9c2651a-win32-static, ffmpeg-git-276f43b-win32-static, ffmpeg-git-cbf914c-win32-static or ffmpeg\ffmpeg-git-e403a97-win32-static.
[mpegts @ 02ACBA60] Predefined SLConfigDescriptor not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented.
FFmpeg is used to convert AVC + AAC in a ts container to MPG for editing priot to using FFmpeg to convert the edited MPG to MP4.
Attached A V Input to MPG.bat, 0000.ts
Attachments (4)
Change History (12)
by , 13 years ago
Attachment: | ffmpeg.zip added |
---|
comment:2 by , 13 years ago
Keywords: | mpegts @ 02ACBA60 removed |
---|
Please either upload the sample to http://www.datafilehost.com/ or read http://ffmpeg.org/bugreports.html to learn about incoming.
Mediainfo output and scripts are nearly always unneeded, FFmpeg command line and complete, uncut console output is always absolutely needed.
comment:3 by , 13 years ago
The requested files, Sample Video file 0000.ts and #1043 Dropped or Changed Predefined SLConfigDescriptor batch file and run results.txt have been uploaded to http://www.datafilehost.com/
All runs are in the sequence shown in the batch file.
Ignore lines beginning with “rem good set” or “rem bad set” as they were runs done yesterday and no results are provided.
Note runs 3, 4 and 7 crashed, ffmpeg could not handle my file. These cases could be cause for another ticket.
A quick question, when will Audio Codec “aac” be moved to mainstream and loose the “-strict experimental”?
set ACodec=-acodec aac -strict experimental
set AParams=-ab 320k -ar 48000 -ac 2 -vol 307
http://www.datafilehost.com/download-4bd11e99.html
Download: http://www.datafilehost.com/get.php?file=4bd11e99
by , 13 years ago
Attachment: | SLConfigDesciptor.ts added |
---|
comment:4 by , 13 years ago
Status: | new → open |
---|---|
Summary: | Dropped or Changed Predefined SLConfigDescriptor → Predefined SLConfigDescriptor |
Version: | unspecified → git-master |
I don't know if there is an unimplemented feature or a message that should be less verbose.
$ ffmpeg -i SLConfigDesciptor.ts -t 6 -f null - ffmpeg version N-38624-gc088b7f Copyright (c) 2000-2012 the FFmpeg developers built on Mar 7 2012 18:50:15 with gcc 4.3.2 configuration: --cc=/usr/local/gcc-4.3.2/bin/gcc --enable-gpl libavutil 51. 42.100 / 51. 42.100 libavcodec 54. 10.100 / 54. 10.100 libavformat 54. 2.100 / 54. 2.100 libavdevice 53. 4.100 / 53. 4.100 libavfilter 2. 63.100 / 2. 63.100 libswscale 2. 1.100 / 2. 1.100 libswresample 0. 7.100 / 0. 7.100 libpostproc 52. 0.100 / 52. 0.100 [mpegts @ 0x8eb4aa0] Predefined SLConfigDescriptor not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented. [h264 @ 0x8eb8740] non-existing PPS referenced [h264 @ 0x8eb8740] non-existing PPS 0 referenced [h264 @ 0x8eb8740] decode_slice_header error [h264 @ 0x8eb8740] no frame! [h264 @ 0x8eb8740] non-existing PPS referenced [h264 @ 0x8eb8740] non-existing PPS 0 referenced [h264 @ 0x8eb8740] decode_slice_header error [h264 @ 0x8eb8740] no frame! [h264 @ 0x8eb8740] non-existing PPS referenced [h264 @ 0x8eb8740] non-existing PPS 0 referenced [h264 @ 0x8eb8740] decode_slice_header error [h264 @ 0x8eb8740] no frame! [h264 @ 0x8eb8740] non-existing PPS referenced [h264 @ 0x8eb8740] non-existing PPS 0 referenced [h264 @ 0x8eb8740] decode_slice_header error [h264 @ 0x8eb8740] no frame! [mpegts @ 0x8eb4aa0] Predefined SLConfigDescriptor not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented. [h264 @ 0x8eb8740] non-existing PPS referenced [h264 @ 0x8eb8740] non-existing PPS 0 referenced [h264 @ 0x8eb8740] decode_slice_header error [h264 @ 0x8eb8740] no frame! [h264 @ 0x8eb8740] non-existing PPS referenced [h264 @ 0x8eb8740] non-existing PPS 0 referenced [h264 @ 0x8eb8740] decode_slice_header error [h264 @ 0x8eb8740] no frame! [h264 @ 0x8eb8740] Increasing reorder buffer to 1 [mpegts @ 0x8eb4aa0] Predefined SLConfigDescriptor not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented. Last message repeated 3 times [mpegts @ 0x8eb4aa0] max_analyze_duration 5000000 reached at 5013333 [mpegts @ 0x8eb4aa0] Predefined SLConfigDescriptor not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented. Input #0, mpegts, from 'SLConfigDesciptor.ts': Duration: 00:00:06.55, start: 71.918456, bitrate: 3126 kb/s Program 1 Stream #0:0[0x44](eng): Video: h264 (Main) ([27][0][0][0] / 0x001B), yuv420p, 720x576 [SAR 1:1 DAR 5:4], 26.07 fps, 25 tbr, 90k tbn, 50 tbc Stream #0:1[0x45](eng): Audio: aac ([15][0][0][0] / 0x000F), 48000 Hz, stereo, s16, 98 kb/s [buffer @ 0x8eb9f80] w:720 h:576 pixfmt:yuv420p tb:1/1000000 sar:1/1 sws_param: Output #0, null, to 'pipe:': Metadata: encoder : Lavf54.2.100 Stream #0:0(eng): Video: rawvideo (I420 / 0x30323449), yuv420p, 720x576 [SAR 1:1 DAR 5:4], q=2-31, 200 kb/s, 90k tbn, 25 tbc Stream #0:1(eng): Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s Stream mapping: Stream #0:0 -> #0:0 (h264 -> rawvideo) Stream #0:1 -> #0:1 (aac -> pcm_s16le) Press [q] to stop, [?] for help [h264 @ 0x8eb8740] Missing reference picture [h264 @ 0x8eb8740] decode_slice_header error [h264 @ 0x8eb8740] concealing 1620 DC, 1620 AC, 1620 MV errors [h264 @ 0x8eb8740] Missing reference picture Last message repeated 3 times [mpegts @ 0x8eb4aa0] Predefined SLConfigDescriptor not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented. Last message repeated 2 times frame= 56 fps= 0 q=0.0 size= 0kB time=00:00:02.24 bitrate= 0.0kbits/s dup=4 drop=0 [mpegts @ 0x8eb4aa0] Predefined SLConfigDescriptor not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented. [mpegts @ 0x8eb4aa0] Predefined SLConfigDescriptor not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented. frame= 105 fps=105 q=0.0 size= 0kB time=00:00:04.20 bitrate= 0.0kbits/s dup=4 drop=0 [mpegts @ 0x8eb4aa0] Predefined SLConfigDescriptor not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented. [mpegts @ 0x8eb4aa0] Predefined SLConfigDescriptor not implemented. Update your FFmpeg version to the newest one from Git. If the problem still occurs, it means that your file has a feature which has not been implemented. frame= 151 fps=108 q=0.0 Lsize= 0kB time=00:00:05.99 bitrate= 0.0kbits/s dup=4 drop=0 video:0kB audio:1124kB global headers:0kB muxing overhead -100.000000%
by , 13 years ago
Attachment: | mpegts.c.TXT added |
---|
comment:5 by , 13 years ago
Hi All,
It would appear that the "ERROR" is reported via the following piece of code in mpegts.c!
That is the only place "Windows Grep" could find it
Searched in the following source code libs with the results as noted .....
ffmpeg-0.5.tar.bz2 .... not found
ffmpeg-0.6.2.tar.bz2 .... not found
ffmpeg-0.6.5.tar.gz .... not found
ffmpeg-0.7.1.tar.bz2 .... not found
ffmpeg-0.9.1.tar.bz2 .... not found
ffmpeg-0.10.2.tar.bz2 .... FOUND
static int parse_MP4SLDescrTag(MP4DescrParseContext *d, int64_t off, int len)
{
Mp4Descr *descr = d->active_descr;
int predefined;
if (!descr)
return -1;
predefined = avio_r8(&d->pb);
if (!predefined) {
int lengths;
int flags = avio_r8(&d->pb);
descr->sl.use_au_start = !!(flags & 0x80);
descr->sl.use_au_end = !!(flags & 0x40);
descr->sl.use_rand_acc_pt = !!(flags & 0x20);
descr->sl.use_padding = !!(flags & 0x08);
descr->sl.use_timestamps = !!(flags & 0x04);
descr->sl.use_idle = !!(flags & 0x02);
descr->sl.timestamp_res = avio_rb32(&d->pb);
avio_rb32(&d->pb);
descr->sl.timestamp_len = avio_r8(&d->pb);
descr->sl.ocr_len = avio_r8(&d->pb);
descr->sl.au_len = avio_r8(&d->pb);
descr->sl.inst_bitrate_len = avio_r8(&d->pb);
lengths = avio_rb16(&d->pb);
descr->sl.degr_prior_len = lengths >> 12;
descr->sl.au_seq_num_len = (lengths >> 7) & 0x1f;
descr->sl.packet_seq_num_len = (lengths >> 2) & 0x1f;
} else {
av_log_missing_feature(d->s, "Predefined SLConfigDescriptor\n", 0);
}
return 0;
}
by , 13 years ago
Attachment: | 2_pass_run_log.txt added |
---|
comment:6 by , 13 years ago
Hi All,
It is a simple FIX, just comment the ELSE Statement or REMOVE it.
EG /* av_log_missing_feature(d->s, "Predefined SLConfigDescriptor\n", 0); */
I like the comment as it allows an audit trail.
I obtained the latest ffmpeg from git and amended mpegts.c as below, and recompiled ffmpeg
which ran to completion without the error messages. See attached 2 pass run log.
static int parse_MP4SLDescrTag(MP4DescrParseContext *d, int64_t off, int len)
{
Mp4Descr *descr = d->active_descr;
int predefined;
if (!descr)
return -1;
predefined = avio_r8(&d->pb);
if (!predefined) {
int lengths;
int flags = avio_r8(&d->pb);
descr->sl.use_au_start = !!(flags & 0x80);
descr->sl.use_au_end = !!(flags & 0x40);
descr->sl.use_rand_acc_pt = !!(flags & 0x20);
descr->sl.use_padding = !!(flags & 0x08);
descr->sl.use_timestamps = !!(flags & 0x04);
descr->sl.use_idle = !!(flags & 0x02);
descr->sl.timestamp_res = avio_rb32(&d->pb);
avio_rb32(&d->pb);
descr->sl.timestamp_len = avio_r8(&d->pb);
descr->sl.ocr_len = avio_r8(&d->pb);
descr->sl.au_len = avio_r8(&d->pb);
descr->sl.inst_bitrate_len = avio_r8(&d->pb);
lengths = avio_rb16(&d->pb);
descr->sl.degr_prior_len = lengths >> 12;
descr->sl.au_seq_num_len = (lengths >> 7) & 0x1f;
descr->sl.packet_seq_num_len = (lengths >> 2) & 0x1f;
} else {
/* av_log_missing_feature(d->s, "Predefined SLConfigDescriptor\n", 0); */
}
return 0;
}
comment:7 by , 12 years ago
Summary: | Predefined SLConfigDescriptor → add support for Predefined SLConfigDescriptor |
---|---|
Type: | defect → enhancement |
comment:8 by , 12 years ago
Component: | undetermined → avformat |
---|---|
Keywords: | mpegts added |
Priority: | normal → wish |
Batch File and Mediainfo foe 0000.ts