I had another look at this today and managed to find a solution. Adding "-bsf:v dump_extra" makes the mpeg2ts output file readable by ffmpeg.
On Mon, Nov 3, 2014 at 3:38 PM, Jonathan Viney <jonathan.vi...@gmail.com> wrote: > > On Mon, Nov 3, 2014 at 2:45 PM, Carl Eugen Hoyos <ceho...@ag.or.at> wrote: >> >> Jonathan Viney <jonathan.viney <at> gmail.com> writes: >> >> > ffmpeg -i rtsp://10.9.9.3:554/axis-media/media.amp -c copy -f mpegts >> > out.ts >> > >> > This seems to work fine, but the output file is >> > not recognised by ffmpeg/ffprobe. >> >> Complete, uncut console output missing. >> (I would have expected above command to return an >> error message and I would like to know why there >> is no such message.) > > > Here are the command outputs. > > ffmpeg -rtsp_transport tcp -i rtsp://10.9.9.3:554/axis-media/media.amp -c > copy -y -t 5 out.ts > > ffmpeg version N-67343-gd457478 Copyright (c) 2000-2014 the FFmpeg > developers > built on Nov 3 2014 15:19:39 with Apple LLVM version 6.0 (clang-600.0.54) > (based on LLVM 3.5svn) > configuration: --enable-shared --enable-pthreads --enable-gpl > --enable-version3 --enable-nonfree --enable-libx264 --enable-libvpx > --prefix=/tmp/ffmpeg-test > libavutil 54. 11.100 / 54. 11.100 > libavcodec 56. 10.101 / 56. 10.101 > libavformat 56. 12.100 / 56. 12.100 > libavdevice 56. 2.100 / 56. 2.100 > libavfilter 5. 2.101 / 5. 2.101 > libswscale 3. 1.101 / 3. 1.101 > libswresample 1. 1.100 / 1. 1.100 > libpostproc 53. 3.100 / 53. 3.100 > Input #0, rtsp, from 'rtsp://10.9.9.3:554/axis-media/media.amp': > Metadata: > title : Media Presentation > Duration: N/A, start: 0.040011, bitrate: N/A > Stream #0:0: Video: h264 (Main), yuvj420p(pc, bt709), 1920x1080 [SAR 1:1 > DAR 16:9], 25 fps, 25 tbr, 90k tbn, 180k tbc > Output #0, mpegts, to 'out.ts': > Metadata: > title : Media Presentation > encoder : Lavf56.12.100 > Stream #0:0: Video: h264, yuvj420p, 1920x1080 [SAR 1:1 DAR 16:9], > q=2-31, 25 fps, 90k tbn, 90k tbc > Stream mapping: > Stream #0:0 -> #0:0 (copy) > Press [q] to stop, [?] for help > [mpegts @ 0x7f9f22826a00] Non-monotonous DTS in output stream 0:0; previous: > 0, current: 0; changing to 1. This may result in incorrect timestamps in the > output file. > frame= 127 fps= 32 q=-1.0 Lsize= 5774kB time=00:00:04.99 > bitrate=9460.9kbits/s > video:5341kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB > muxing overhead: 8.106906% > > > ffprobe out.ts > > ffprobe out.ts > ffprobe version N-67343-gd457478 Copyright (c) 2007-2014 the FFmpeg > developers > built on Nov 3 2014 15:19:39 with Apple LLVM version 6.0 (clang-600.0.54) > (based on LLVM 3.5svn) > configuration: --enable-shared --enable-pthreads --enable-gpl > --enable-version3 --enable-nonfree --enable-libx264 --enable-libvpx > --prefix=/tmp/ffmpeg-test > libavutil 54. 11.100 / 54. 11.100 > libavcodec 56. 10.101 / 56. 10.101 > libavformat 56. 12.100 / 56. 12.100 > libavdevice 56. 2.100 / 56. 2.100 > libavfilter 5. 2.101 / 5. 2.101 > libswscale 3. 1.101 / 3. 1.101 > libswresample 1. 1.100 / 1. 1.100 > libpostproc 53. 3.100 / 53. 3.100 > [h264 @ 0x7fe783808000] non-existing PPS 0 referenced > Last message repeated 1 times > [h264 @ 0x7fe783808000] decode_slice_header error > [h264 @ 0x7fe783808000] no frame! > [h264 @ 0x7fe783808000] non-existing PPS 0 referenced > Last message repeated 1 times > [h264 @ 0x7fe783808000] decode_slice_header error > [h264 @ 0x7fe783808000] no frame! > [h264 @ 0x7fe783808000] non-existing PPS 0 referenced > (duplicate messages removed) > [mpegts @ 0x7fe78300da00] decoding for stream 0 failed > [mpegts @ 0x7fe78300da00] Could not find codec parameters for stream 0 > (Video: h264 ([27][0][0][0] / 0x001B), none): unspecified size > Consider increasing the value for the 'analyzeduration' and 'probesize' > options > out.ts: Operation not permitted > >> >> >> > If I do it in two steps, first saving the stream >> > as a .mp4, it converts to mpegts fine with: >> > >> > ffmpeg -i out.mp4 -c copy -bsf h264_mp4toannexb out.ts >> > >> > Is it possible to do this in one step without the >> > intermediary file? >> >> What happens if you add the bitstreamfilter to the >> first command? > > > ffmpeg -rtsp_transport tcp -i rtsp://10.9.9.3:554/axis-media/media.amp -c > copy -y -bsf h264_mp4toannexb -t 5 out.ts > > ffmpeg version N-67343-gd457478 Copyright (c) 2000-2014 the FFmpeg > developers > built on Nov 3 2014 15:19:39 with Apple LLVM version 6.0 (clang-600.0.54) > (based on LLVM 3.5svn) > configuration: --enable-shared --enable-pthreads --enable-gpl > --enable-version3 --enable-nonfree --enable-libx264 --enable-libvpx > --prefix=/tmp/ffmpeg-test > libavutil 54. 11.100 / 54. 11.100 > libavcodec 56. 10.101 / 56. 10.101 > libavformat 56. 12.100 / 56. 12.100 > libavdevice 56. 2.100 / 56. 2.100 > libavfilter 5. 2.101 / 5. 2.101 > libswscale 3. 1.101 / 3. 1.101 > libswresample 1. 1.100 / 1. 1.100 > libpostproc 53. 3.100 / 53. 3.100 > Input #0, rtsp, from 'rtsp://10.9.9.3:554/axis-media/media.amp': > Metadata: > title : Media Presentation > Duration: N/A, start: 0.040000, bitrate: N/A > Stream #0:0: Video: h264 (Main), yuvj420p(pc, bt709), 1920x1080 [SAR 1:1 > DAR 16:9], 25 fps, 25 tbr, 90k tbn, 180k tbc > Output #0, mpegts, to 'out.ts': > Metadata: > title : Media Presentation > encoder : Lavf56.12.100 > Stream #0:0: Video: h264, yuvj420p, 1920x1080 [SAR 1:1 DAR 16:9], > q=2-31, 25 fps, 90k tbn, 90k tbc > Stream mapping: > Stream #0:0 -> #0:0 (copy) > Press [q] to stop, [?] for help > [NULL @ 0x7fa97a820600] Packet header is not contained in global extradata, > corrupted stream or invalid MP4/AVCC bitstream > Failed to open bitstream filter h264_mp4toannexb for stream 0 with codec > copy: Invalid argument > [NULL @ 0x7fa97a820600] Packet header is not contained in global extradata, > corrupted stream or invalid MP4/AVCC bitstream > Failed to open bitstream filter h264_mp4toannexb for stream 0 with codec > copy: Invalid argument > [mpegts @ 0x7fa97a809600] Non-monotonous DTS in output stream 0:0; previous: > 0, current: 0; changing to 1. This may result in incorrect timestamps in the > output file. > [NULL @ 0x7fa97a820600] Packet header is not contained in global extradata, > corrupted stream or invalid MP4/AVCC bitstream > Failed to open bitstream filter h264_mp4toannexb for stream 0 with codec > copy: Invalid argument > (duplicate messages removed) > frame= 127 fps= 31 q=-1.0 Lsize= 5280kB time=00:00:04.99 > bitrate=8651.6kbits/s > video:4883kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB > muxing overhead: 8.132199% > > The resulting output file gives the same errors as above when passed to > ffprobe. > > Thanks for the help. > > Regards, > -Jonathan. > > >> Carl Eugen >> >> _______________________________________________ >> ffmpeg-user mailing list >> ffmpeg-user@ffmpeg.org >> http://ffmpeg.org/mailman/listinfo/ffmpeg-user > > _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user