Hi,
Now the video can be played by adding the sps and pps information stored in the
avctx->extradata to the beginning of video frame. Why the TS container do not
do that for me? Is there anyone know what the problem is?
Best regards,
Li
________________________________________
From: [email protected] [[email protected]] On Behalf
Of Li Zhang [[email protected]]
Sent: Tuesday, March 13, 2012 10:27 AM
To: This list is about using libavcodec, libavformat, libavutil, libavdevice
and libavfilter.
Subject: Re: [Libav-user] Please help me about transcoding to TS stream:
H.264 bitstream malformed, no startcode found, use the h264_mp4toannexb
bitstream filter (-bsf h264_mp4toannexb)
Hi,
I have check the final .ts file I got, there is no PPS and SPS for IDR frame. I
have configure that the CODEC__FLAG_GLOBAL_HEADER. The gop_size is 250. The
first video frame is I frame. But there is no PPS and SPS information. However,
when I put the video and audio into mp4 container, the video and audio all can
be played. Is there anyone can tell me what happened?
Best regards,
Li Zhang
________________________________________
From: [email protected] [[email protected]] On Behalf
Of Li Zhang [[email protected]]
Sent: Saturday, March 10, 2012 9:37 AM
To: This list is about using libavcodec, libavformat, libavutil, libavdevice
and libavfilter.
Subject: Re: [Libav-user] Please help me about transcoding to TS stream:
H.264 bitstream malformed, no startcode found, use the h264_mp4toannexb
bitstream filter (-bsf h264_mp4toannexb)
Hi Kalileo,
Thank you very much for your quick reply.
Sorry for my unclear description last email. What I have done is start from
mpeg2 TS stream, and then decoding, encoding them to H.264+AAC without
container. Next I have put H.264+AAC data frame into AVI, MKV, MP4 container
successfully. However, my final target is putting H.264+AAC data frame into TS
container. And it failed. So what I passed to IMHO h264_mp4toannexb is not
mpegts stream but H.264+AAC frame.
So I want to make sure you understand my situation correctly.
So according to my understanding, after the H.264 encoding, I should add the
h264 Annex B header to every H264 video frame manually. Am I right?
Hope there is some experts can give us confirmation about that. Or there is any
other suggestion please tell me, thanks.
Best regards,
Li Zhang
________________________________________
From: [email protected] [[email protected]] On Behalf
Of Kalileo [[email protected]]
Sent: Friday, March 09, 2012 5:27 PM
To: This list is about using libavcodec, libavformat, libavutil,
libavdevice and libavfilter.
Subject: Re: [Libav-user] Please help me about transcoding to TS stream:
H.264 bitstream malformed, no startcode found, use the h264_mp4toannexb
bitstream filter (-bsf h264_mp4toannexb)
On Mar 9, 2012, at 22:20 , Li Zhang wrote:
Hi everyone,
I am a new user to ffmpeg API. I want to transcode mpeg2 video stream to
H.264+AAC and then put them into TS container again.
I have implemented transcoding from mpeg2 TS to AVI, MKV, MP4 local files. Now
the problem is when I used the same code put those H.264+AAC data packet into
TS container, the video can not be played and only the audio can be played.
Actually, there was video packet data in the .ts file which was derived from
trandcoding.
And I got the information from ffmpeg that "H.264 bitstream malformed, no startcode
found, use the h264_mp4toannexb bitstream filter (-bsf h264_mp4toannexb)". So I
initiated the h264_mp4toannexb bitstreamfilter and use av_bitstream_filter_filter to
process the packet before write them to output file. However, av_bitstream_filter_filter
returns 0 and the final output file still the same situation and the warning information
still happen.
There is another warning information about DTS, it only happen every 29 frames.
That is so strange. Please help me. I used the latest version of ffmpeg.
When I used the Elecard Stream Analyzer to check my transcoded file, I found
the file missed SPS and SEI information for the video stream. There is only SPS
and SEI information for audio stream. I do not know why the TS container can
not produce these information for me.
Hi Li,
IMHO h264_mp4toannexb does not work if you convert from mpegts stream to mpegts
stream, because as far as I have understood it h264_mp4toannexb expects mp4 as
source and not mpegts. you need to do manually what h264_mp4toannexb would do,
that is adding the h264 Annex B header in front of every h264 frame.
I'm sure the experts here can confirm or correct me, and explain better what to
do.
_______________________________________________
Libav-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/libav-user
_______________________________________________
Libav-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/libav-user
_______________________________________________
Libav-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/libav-user
_______________________________________________
Libav-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/libav-user