[FFmpeg-user] Android encoded video Demux and Mux again
Dmitry Monakhov
dmonlist at gmail.com
Mon Nov 14 13:30:39 CET 2011
On Mon, 14 Nov 2011 11:51:30 +0000 (UTC), Carl Eugen Hoyos <cehoyos at ag.or.at> wrote:
> Dmitry Monakhov <dmonlist <at> gmail.com> writes:
>
> > And now i want to check that resulted stream are usable and it is
> > possible to mux it again to container
> > #ffmpeg -i h264sample.h264 -vcodec copy 264sample-out.mp4
> > But i always get an error.
>
> Complete, uncut console output missing.
ffmpeg version N-34800-g46eae15, Copyright (c) 2000-2011 the FFmpeg
developers
built on Nov 13 2011 15:23:31 with gcc 4.4.3
configuration: --disable-yasm --enable-gpl
libavutil 51. 24. 1 / 51. 24. 1
libavcodec 53. 33. 0 / 53. 33. 0
libavformat 53. 20. 0 / 53. 20. 0
libavdevice 53. 4. 0 / 53. 4. 0
libavfilter 2. 48. 0 / 2. 48. 0
libswscale 2. 1. 0 / 2. 1. 0
libpostproc 51. 2. 0 / 51. 2. 0
[h264 @ 0xa339e20] missing picture in access unit with size 1693527
[h264 @ 0xa339e20] no frame!
[h264 @ 0xa32bac0] Could not find codec parameters (Video: h264)
[h264 @ 0xa32bac0] Estimating duration from bitrate, this may be
inaccurate
h264sample-1.h264: could not find codec parameters
i've tried to demux it with following command
ffmpeg -i h264sample.mp4 -vcodec copy -vbsf h264_mp4toannexb -an of.h264
and now i'm able to mux it again, but i've issues with timings
Seems like android encode it with variable framerate. So in order to
mux it correctly i have to know pts or dts. Is it possible to
determine this info from the stream?
I'm asking because sipdroid and spydroid-ipcamera does strange things:
Basically it parse h263, or 264 stream and paketize it to srtp
1) Camera encoder write three_gp container (with video only ) to socket
2) receiver read data from socket, parse each nal unit one by one, and
paketize it to SRTP stream and tag each packet with the current time
(the time when this unit was transfered to srtp unit), but it seems
to be wrong, and it should be tagged with the time then each nal was
grabbed from camera. My theory that this is because it is hard or
impossible to determine real time.
>
> Carl Eugen
>
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
More information about the ffmpeg-user
mailing list