Discussion:
[FFmpeg-user] RTP/MPEGTS streaming with FFMPEG
Dethof, Alexander Martin
2015-10-21 08:47:55 UTC
Permalink
Hello everybody!
ffmpeg -re -y -i input.hevc -an -f rtp_mpegts rtp://127.0.0.1:1234
The transmitted packets are captured with tcpdump into a .pcap file. When analyzing the PCAP and its implied TS, I observed the following problems:

1. The stream type in the PMT table of the TS is 16, which means MPEG4-video. I would have expected 39 here. Also a short ffprobe request on the TS returns the MPEG4 container here. Thus I am wondering why the raw HEVC bitstream is encapsuled in an MP4 container.

2. DTS = PTS in each PES header, while they should be different for P and B frames. Command line used: ffprobe file.ts -show_frames -show_entries frame=pkt_dts_time,pkt_pts_time

Further more I tried to use the option "-bsf:v hevc_mp4toannexb", but I could not figure out a difference yet and updated the git, I am currently working on version N-75480-ge859a3c.

Am I doing something wrong?

With kind regards,
Alexander Dethof
Carl Eugen Hoyos
2015-10-21 16:31:47 UTC
Permalink
This post might be inappropriate. Click to display it.
fohletex
2015-10-22 14:33:28 UTC
Permalink
Post by Carl Eugen Hoyos
Command line and complete, uncut console output missing.
I capture the network traffic with tcpdump:


With Wireshark I get back the entire payload and save it in a separate file
(Option: follow UDP stream)

FFProbe-Analysis:


Attached you can find the appropriate sintel.pcap
<http://ffmpeg-users.933282.n4.nabble.com/file/n4672799/sintel.pcap> - and
sintel.ts <http://ffmpeg-users.933282.n4.nabble.com/file/n4672799/sintel.ts>
-file.

Alexander Dethof





--
View this message in context: http://ffmpeg-users.933282.n4.nabble.com/RTP-MPEGTS-streaming-with-FFMPEG-tp4672782p4672799.html
Sent from the FFmpeg-users mailing list archive at Nabble.com.
Moritz Barsnick
2015-10-22 14:54:55 UTC
Permalink
Post by Carl Eugen Hoyos
Command line and complete, uncut console output missing.
You quote Carl Eugen, but provide NOTHING of what he actually asked
for? How do you expect to get help? We would like to see the actual
*ffmpeg* command line and console output.

Moritz
Moritz Barsnick
2015-10-22 15:01:15 UTC
Permalink
Post by Moritz Barsnick
You quote Carl Eugen, but provide NOTHING of what he actually asked
for?
Or it gets lost in the way you send your mail. See here how we see your
mail:

http://ffmpeg.org/pipermail/ffmpeg-user/2015-October/028896.html

Moritz
Alexander Dethof
2015-10-22 14:49:41 UTC
Permalink
Post by Moritz Barsnick
You quote Carl Eugen, but provide NOTHING of what he actually asked
for? How do you expect to get help? We would like to see the actual
*ffmpeg* command line and console output.
I am sorry, something went wrong with the formatings on NABBLE ( Original
Article
<http://ffmpeg-users.933282.n4.nabble.com/RTP-MPEGTS-streaming-with-FFMPEG-tp4672782p4672799.html>
). Here's my second try:

$> ffmpeg -i sintel.hevc -f rtp_mpegts -bsf:v hevc_mp4toannexb
rtp://127.0.0.1:1234
ffmpeg version N-76159-gda43e9e Copyright (c) 2000-2015 the FFmpeg
developers
built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04)
configuration: --prefix=/home/alexanderdethof/ffmpeg_build
--pkg-config-flags=--static
--extra-cflags=-I/home/alexanderdethof/ffmpeg_build/include
--extra-ldflags=-L/home/alexanderdethof/ffmpeg_build/lib
--bindir=/home/alexanderdethof/bin --enable-gpl --enable-libass
--enable-libfdk-aac --enable-libfreetype --enable-libmp3lame
--enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx
--enable-libx264 --enable-libx265 --enable-nonfree
libavutil 55. 4.100 / 55. 4.100
libavcodec 57. 8.100 / 57. 8.100
libavformat 57. 10.101 / 57. 10.101
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 12.100 / 6. 12.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.100 / 2. 0.100
libpostproc 54. 0.100 / 54. 0.100
Input #0, hevc, from 'sintel.hevc':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: hevc (Main), yuv420p(tv), 1920x1080, 24 fps, 24 tbr,
1200k tbn, 24 tbc
Output #0, rtp_mpegts, to 'rtp://127.0.0.1:1234':
Metadata:
encoder : Lavf57.10.101
Stream #0:0: Video: mpeg4, yuv420p, 1920x1080, q=2-31, 200 kb/s, 24 fps,
90k tbn, 24 tbc
Metadata:
encoder : Lavc57.8.100 mpeg4
Stream mapping:
Stream #0:0 -> #0:0 (hevc (native) -> mpeg4 (native))
Press [q] to stop, [?] for help
frame= 56 fps=0.0 q=31.0 size= 1290kB time=00:00:02.33
bitrate=4530.5kbits/s
frame= 111 fps=111 q=31.0 size= 2316kB time=00:00:04.62
bitrate=4102.6kbits/s
frame= 195 fps=129 q=31.0 size= 3170kB time=00:00:08.12
bitrate=3195.7kbits/s
frame= 241 fps=134 q=31.0 Lsize= 3573kB time=00:00:10.04
bitrate=2914.8kbits/s
video:3256kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: 9.735558%


I capture the network traffic with tcpdump:

$> tcpdump -i lo -w sintel.pcap udp port 1234
tcpdump: listening on lo, link-type EN10MB (Ethernet), capture size 65535
bytes
2714 packets captured
5510 packets received by filter
0 packets dropped by kernel


With Wireshark I get back the entire payload and save it in a separate file
(Option: follow UDP stream)

FFProbe-Analysis:

$> ffprobe -i sintel.ts -show_streams -of compact -show_frames -show_entries
frame=pkt_dts_time,pkt_pts_timeffprobe version N-76159-gda43e9e Copyright
(c) 2007-2015 the FFmpeg developers
built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04)
configuration: --prefix=/home/alexanderdethof/ffmpeg_build
--pkg-config-flags=--static
--extra-cflags=-I/home/alexanderdethof/ffmpeg_build/include
--extra-ldflags=-L/home/alexanderdethof/ffmpeg_build/lib
--bindir=/home/alexanderdethof/bin --enable-gpl --enable-libass
--enable-libfdk-aac --enable-libfreetype --enable-libmp3lame
--enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx
--enable-libx264 --enable-libx265 --enable-nonfree
libavutil 55. 4.100 / 55. 4.100
libavcodec 57. 8.100 / 57. 8.100
libavformat 57. 10.101 / 57. 10.101
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 12.100 / 6. 12.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.100 / 2. 0.100
libpostproc 54. 0.100 / 54. 0.100
Input #0, mpegts, from 'sintel.ts':
Duration: 00:00:09.75, start: 1.400000, bitrate: 2957 kb/s
Program 1
Metadata:
service_name : Service01
service_provider: FFmpeg
Stream #0:0[0x100]: Video: mpeg4 (Simple Profile) ([16][0][0][0] /
0x0010), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 24 fps, 24 tbr, 90k tbn, 24
tbc
[mpeg4 @ 0x3211420] ac-tex damaged at 48 13
[mpeg4 @ 0x3211420] Error at MB: 1621
[mpeg4 @ 0x3211420] concealing 245 DC, 245 AC, 245 MV errors in P frame
frame|pkt_pts_time=1.400000|pkt_dts_time=1.400000
frame|pkt_pts_time=1.441667|pkt_dts_time=1.441667
frame|pkt_pts_time=1.483333|pkt_dts_time=1.483333
frame|pkt_pts_time=1.525000|pkt_dts_time=1.525000
frame|pkt_pts_time=1.566667|pkt_dts_time=1.566667
frame|pkt_pts_time=1.608333|pkt_dts_time=1.608333
frame|pkt_pts_time=1.650000|pkt_dts_time=1.650000
frame|pkt_pts_time=1.691667|pkt_dts_time=1.691667
[mpeg4 @ 0x3195c40] illegal dc vlc
[mpeg4 @ 0x3195c40] Error at MB: 4691
frame|pkt_pts_time=1.733333|pkt_dts_time=1.733333
frame|pkt_pts_time=1.775000|pkt_dts_time=1.775000
[mpeg4 @ 0x3195c40] concealing 812 DC, 812 AC, 812 MV errors in P frame
frame|pkt_pts_time=1.816667|pkt_dts_time=1.816667
frame|pkt_pts_time=1.858333|pkt_dts_time=1.858333
[mpeg4 @ 0x319f3c0] Error at MB: 3042
frame|pkt_pts_time=1.900000|pkt_dts_time=1.900000
[mpeg4 @ 0x319f3c0] Error at MB: 3814
[mpeg4 @ 0x319f3c0] Error at MB: 6553
[mpeg4 @ 0x319f3c0] ac-tex damaged at 22 61
[mpeg4 @ 0x319f3c0] Error at MB: 7403
[mpeg4 @ 0x319f3c0] concealing 5389 DC, 5389 AC, 5389 MV errors in P frame
[mpeg4 @ 0x319c140] I cbpy damaged at 113 66
[mpeg4 @ 0x319c140] Error at MB: 8099
[mpeg4 @ 0x319c140] concealing 176 DC, 176 AC, 176 MV errors in I frame
frame|pkt_pts_time=1.941667|pkt_dts_time=1.941667
frame|pkt_pts_time=1.983333|pkt_dts_time=1.983333
frame|pkt_pts_time=2.025000|pkt_dts_time=2.025000
frame|pkt_pts_time=2.066667|pkt_dts_time=2.066667
frame|pkt_pts_time=2.108333|pkt_dts_time=2.108333
frame|pkt_pts_time=2.150000|pkt_dts_time=2.150000
frame|pkt_pts_time=2.191667|pkt_dts_time=2.191667
frame|pkt_pts_time=2.233333|pkt_dts_time=2.233333
frame|pkt_pts_time=2.275000|pkt_dts_time=2.275000
frame|pkt_pts_time=2.316667|pkt_dts_time=2.316667
frame|pkt_pts_time=2.358333|pkt_dts_time=2.358333
frame|pkt_pts_time=2.400000|pkt_dts_time=2.400000
frame|pkt_pts_time=2.441667|pkt_dts_time=2.441667
frame|pkt_pts_time=2.483333|pkt_dts_time=2.483333
frame|pkt_pts_time=2.525000|pkt_dts_time=2.525000
frame|pkt_pts_time=2.566667|pkt_dts_time=2.566667
frame|pkt_pts_time=2.608333|pkt_dts_time=2.608333
frame|pkt_pts_time=2.650000|pkt_dts_time=2.650000
[mpeg4 @ 0x3195c40] Error at MB: 6741
[mpeg4 @ 0x3195c40] concealing 576 DC, 576 AC, 576 MV errors in P frame
frame|pkt_pts_time=2.691667|pkt_dts_time=2.691667
frame|pkt_pts_time=2.733333|pkt_dts_time=2.733333
frame|pkt_pts_time=2.775000|pkt_dts_time=2.775000
frame|pkt_pts_time=2.816667|pkt_dts_time=2.816667
frame|pkt_pts_time=2.858333|pkt_dts_time=2.858333
frame|pkt_pts_time=2.900000|pkt_dts_time=2.900000
frame|pkt_pts_time=2.941667|pkt_dts_time=2.941667
frame|pkt_pts_time=2.983333|pkt_dts_time=2.983333
frame|pkt_pts_time=3.025000|pkt_dts_time=3.025000
frame|pkt_pts_time=3.066667|pkt_dts_time=3.066667
frame|pkt_pts_time=3.108333|pkt_dts_time=3.108333
frame|pkt_pts_time=3.150000|pkt_dts_time=3.150000
frame|pkt_pts_time=3.191667|pkt_dts_time=3.191667
frame|pkt_pts_time=3.233333|pkt_dts_time=3.233333
frame|pkt_pts_time=3.275000|pkt_dts_time=3.275000
frame|pkt_pts_time=3.316667|pkt_dts_time=3.316667
frame|pkt_pts_time=3.358333|pkt_dts_time=3.358333
frame|pkt_pts_time=3.400000|pkt_dts_time=3.400000
[mpeg4 @ 0x3198ec0] Error at MB: 4351
frame|pkt_pts_time=3.441667|pkt_dts_time=3.441667
[mpeg4 @ 0x3198ec0] concealing 313 DC, 313 AC, 313 MV errors in P frame
frame|pkt_pts_time=3.483333|pkt_dts_time=3.483333
frame|pkt_pts_time=3.525000|pkt_dts_time=3.525000
frame|pkt_pts_time=3.566667|pkt_dts_time=3.566667
frame|pkt_pts_time=3.608333|pkt_dts_time=3.608333
frame|pkt_pts_time=3.650000|pkt_dts_time=3.650000
frame|pkt_pts_time=3.691667|pkt_dts_time=3.691667
frame|pkt_pts_time=3.733333|pkt_dts_time=3.733333
frame|pkt_pts_time=3.775000|pkt_dts_time=3.775000
frame|pkt_pts_time=3.816667|pkt_dts_time=3.816667
frame|pkt_pts_time=3.858333|pkt_dts_time=3.858333
frame|pkt_pts_time=3.900000|pkt_dts_time=3.900000
frame|pkt_pts_time=3.941667|pkt_dts_time=3.941667
frame|pkt_pts_time=3.983333|pkt_dts_time=3.983333
frame|pkt_pts_time=4.025000|pkt_dts_time=4.025000
frame|pkt_pts_time=4.066667|pkt_dts_time=4.066667
frame|pkt_pts_time=4.108333|pkt_dts_time=4.108333
frame|pkt_pts_time=4.150000|pkt_dts_time=4.150000
frame|pkt_pts_time=4.191667|pkt_dts_time=4.191667
frame|pkt_pts_time=4.233333|pkt_dts_time=4.233333
frame|pkt_pts_time=4.275000|pkt_dts_time=4.275000
frame|pkt_pts_time=4.316667|pkt_dts_time=4.316667
[mpeg4 @ 0x2eff8e0] Error at MB: 5116
frame|pkt_pts_time=4.358333|pkt_dts_time=4.358333
[mpeg4 @ 0x2eff8e0] concealing 376 DC, 376 AC, 376 MV errors in P frame
frame|pkt_pts_time=4.400000|pkt_dts_time=4.400000
frame|pkt_pts_time=4.441667|pkt_dts_time=4.441667
frame|pkt_pts_time=4.483333|pkt_dts_time=4.483333
frame|pkt_pts_time=4.525000|pkt_dts_time=4.525000
frame|pkt_pts_time=4.566667|pkt_dts_time=4.566667
frame|pkt_pts_time=4.608333|pkt_dts_time=4.608333
frame|pkt_pts_time=4.650000|pkt_dts_time=4.650000
frame|pkt_pts_time=4.691667|pkt_dts_time=4.691667
frame|pkt_pts_time=4.733333|pkt_dts_time=4.733333
frame|pkt_pts_time=4.775000|pkt_dts_time=4.775000
frame|pkt_pts_time=4.816667|pkt_dts_time=4.816667
frame|pkt_pts_time=4.858333|pkt_dts_time=4.858333
frame|pkt_pts_time=4.900000|pkt_dts_time=4.900000
frame|pkt_pts_time=4.941667|pkt_dts_time=4.941667
frame|pkt_pts_time=4.983333|pkt_dts_time=4.983333
[mpeg4 @ 0x319c140] Error at MB: 4905
[mpeg4 @ 0x319c140] concealing 601 DC, 601 AC, 601 MV errors in P frame
frame|pkt_pts_time=5.025000|pkt_dts_time=5.025000
frame|pkt_pts_time=5.066667|pkt_dts_time=5.066667
frame|pkt_pts_time=5.108333|pkt_dts_time=5.108333
frame|pkt_pts_time=5.150000|pkt_dts_time=5.150000
frame|pkt_pts_time=5.191667|pkt_dts_time=5.191667
frame|pkt_pts_time=5.233333|pkt_dts_time=5.233333
frame|pkt_pts_time=5.275000|pkt_dts_time=5.275000
frame|pkt_pts_time=5.316667|pkt_dts_time=5.316667
frame|pkt_pts_time=5.358333|pkt_dts_time=5.358333
[mpeg4 @ 0x3195c40] 1. marker bit missing in 3. esc
[mpeg4 @ 0x3195c40] Error at MB: 471
frame|pkt_pts_time=5.400000|pkt_dts_time=5.400000
frame|pkt_pts_time=5.441667|pkt_dts_time=5.441667
frame|pkt_pts_time=5.483333|pkt_dts_time=5.483333
[mpeg4 @ 0x3195c40] concealing 544 DC, 544 AC, 544 MV errors in P frame
frame|pkt_pts_time=5.525000|pkt_dts_time=5.525000
frame|pkt_pts_time=5.566667|pkt_dts_time=5.566667
frame|pkt_pts_time=5.608333|pkt_dts_time=5.608333
frame|pkt_pts_time=5.650000|pkt_dts_time=5.650000
frame|pkt_pts_time=5.691667|pkt_dts_time=5.691667
frame|pkt_pts_time=5.733333|pkt_dts_time=5.733333
frame|pkt_pts_time=5.775000|pkt_dts_time=5.775000
frame|pkt_pts_time=5.816667|pkt_dts_time=5.816667
frame|pkt_pts_time=5.858333|pkt_dts_time=5.858333
frame|pkt_pts_time=5.900000|pkt_dts_time=5.900000
frame|pkt_pts_time=5.941667|pkt_dts_time=5.941667
frame|pkt_pts_time=5.983333|pkt_dts_time=5.983333
frame|pkt_pts_time=6.025000|pkt_dts_time=6.025000
frame|pkt_pts_time=6.066667|pkt_dts_time=6.066667
frame|pkt_pts_time=6.108333|pkt_dts_time=6.108333
frame|pkt_pts_time=6.150000|pkt_dts_time=6.150000
frame|pkt_pts_time=6.191667|pkt_dts_time=6.191667
frame|pkt_pts_time=6.233333|pkt_dts_time=6.233333
frame|pkt_pts_time=6.275000|pkt_dts_time=6.275000
frame|pkt_pts_time=6.316667|pkt_dts_time=6.316667
frame|pkt_pts_time=6.358333|pkt_dts_time=6.358333
frame|pkt_pts_time=6.400000|pkt_dts_time=6.400000
frame|pkt_pts_time=6.441667|pkt_dts_time=6.441667
frame|pkt_pts_time=6.483333|pkt_dts_time=6.483333
frame|pkt_pts_time=6.525000|pkt_dts_time=6.525000
frame|pkt_pts_time=6.566667|pkt_dts_time=6.566667
frame|pkt_pts_time=6.608333|pkt_dts_time=6.608333
frame|pkt_pts_time=6.650000|pkt_dts_time=6.650000
frame|pkt_pts_time=6.691667|pkt_dts_time=6.691667
frame|pkt_pts_time=6.733333|pkt_dts_time=6.733333
frame|pkt_pts_time=6.775000|pkt_dts_time=6.775000
frame|pkt_pts_time=6.816667|pkt_dts_time=6.816667
[mpeg4 @ 0x3198ec0] I cbpy damaged at 63 20
[mpeg4 @ 0x3198ec0] Error at MB: 2483
[mpeg4 @ 0x3198ec0] concealing 346 DC, 346 AC, 346 MV errors in I frame
frame|pkt_pts_time=6.858333|pkt_dts_time=6.858333
frame|pkt_pts_time=6.900000|pkt_dts_time=6.900000
frame|pkt_pts_time=6.941667|pkt_dts_time=6.941667
frame|pkt_pts_time=6.983333|pkt_dts_time=6.983333
frame|pkt_pts_time=7.025000|pkt_dts_time=7.025000
frame|pkt_pts_time=7.066667|pkt_dts_time=7.066667
frame|pkt_pts_time=7.108333|pkt_dts_time=7.108333
frame|pkt_pts_time=7.150000|pkt_dts_time=7.150000
frame|pkt_pts_time=7.191667|pkt_dts_time=7.191667
frame|pkt_pts_time=7.233333|pkt_dts_time=7.233333
frame|pkt_pts_time=7.275000|pkt_dts_time=7.275000
frame|pkt_pts_time=7.316667|pkt_dts_time=7.316667
frame|pkt_pts_time=7.358333|pkt_dts_time=7.358333
frame|pkt_pts_time=7.400000|pkt_dts_time=7.400000
frame|pkt_pts_time=7.441667|pkt_dts_time=7.441667
frame|pkt_pts_time=7.483333|pkt_dts_time=7.483333
frame|pkt_pts_time=7.525000|pkt_dts_time=7.525000
frame|pkt_pts_time=7.566667|pkt_dts_time=7.566667
frame|pkt_pts_time=7.608333|pkt_dts_time=7.608333
frame|pkt_pts_time=7.650000|pkt_dts_time=7.650000
[mpeg4 @ 0x3198ec0] concealing 185 DC, 185 AC, 185 MV errors in P frame
frame|pkt_pts_time=7.691667|pkt_dts_time=7.691667
frame|pkt_pts_time=7.733333|pkt_dts_time=7.733333
frame|pkt_pts_time=7.775000|pkt_dts_time=7.775000
frame|pkt_pts_time=7.816667|pkt_dts_time=7.816667
frame|pkt_pts_time=7.858333|pkt_dts_time=7.858333
frame|pkt_pts_time=7.900000|pkt_dts_time=7.900000
frame|pkt_pts_time=7.941667|pkt_dts_time=7.941667
frame|pkt_pts_time=7.983333|pkt_dts_time=7.983333
frame|pkt_pts_time=8.025000|pkt_dts_time=8.025000
frame|pkt_pts_time=8.066667|pkt_dts_time=8.066667
frame|pkt_pts_time=8.108333|pkt_dts_time=8.108333
frame|pkt_pts_time=8.150000|pkt_dts_time=8.150000
frame|pkt_pts_time=8.191667|pkt_dts_time=8.191667
frame|pkt_pts_time=8.233333|pkt_dts_time=8.233333
frame|pkt_pts_time=8.275000|pkt_dts_time=8.275000
frame|pkt_pts_time=8.316667|pkt_dts_time=8.316667
frame|pkt_pts_time=8.358333|pkt_dts_time=8.358333
frame|pkt_pts_time=8.400000|pkt_dts_time=8.400000
frame|pkt_pts_time=8.441667|pkt_dts_time=8.441667
frame|pkt_pts_time=8.483333|pkt_dts_time=8.483333
frame|pkt_pts_time=8.525000|pkt_dts_time=8.525000
frame|pkt_pts_time=8.566667|pkt_dts_time=8.566667
frame|pkt_pts_time=8.608333|pkt_dts_time=8.608333
frame|pkt_pts_time=8.650000|pkt_dts_time=8.650000
frame|pkt_pts_time=8.691667|pkt_dts_time=8.691667
frame|pkt_pts_time=8.733333|pkt_dts_time=8.733333
frame|pkt_pts_time=8.775000|pkt_dts_time=8.775000
frame|pkt_pts_time=8.816667|pkt_dts_time=8.816667
frame|pkt_pts_time=8.858333|pkt_dts_time=8.858333
frame|pkt_pts_time=8.900000|pkt_dts_time=8.900000
frame|pkt_pts_time=8.941667|pkt_dts_time=8.941667
frame|pkt_pts_time=8.983333|pkt_dts_time=8.983333
frame|pkt_pts_time=9.025000|pkt_dts_time=9.025000
frame|pkt_pts_time=9.066667|pkt_dts_time=9.066667
frame|pkt_pts_time=9.108333|pkt_dts_time=9.108333
frame|pkt_pts_time=9.150000|pkt_dts_time=9.150000
frame|pkt_pts_time=9.191667|pkt_dts_time=9.191667
frame|pkt_pts_time=9.233333|pkt_dts_time=9.233333
frame|pkt_pts_time=9.275000|pkt_dts_time=9.275000
frame|pkt_pts_time=9.316667|pkt_dts_time=9.316667
frame|pkt_pts_time=9.358333|pkt_dts_time=9.358333
frame|pkt_pts_time=9.400000|pkt_dts_time=9.400000
frame|pkt_pts_time=9.441667|pkt_dts_time=9.441667
frame|pkt_pts_time=9.483333|pkt_dts_time=9.483333
[mpeg4 @ 0x31a2640] concealing 63 DC, 63 AC, 63 MV errors in I frame
frame|pkt_pts_time=9.525000|pkt_dts_time=9.525000
frame|pkt_pts_time=9.566667|pkt_dts_time=9.566667
frame|pkt_pts_time=9.608333|pkt_dts_time=9.608333
frame|pkt_pts_time=9.650000|pkt_dts_time=9.650000
frame|pkt_pts_time=9.691667|pkt_dts_time=9.691667
frame|pkt_pts_time=9.733333|pkt_dts_time=9.733333
frame|pkt_pts_time=9.775000|pkt_dts_time=9.775000
frame|pkt_pts_time=9.816667|pkt_dts_time=9.816667
frame|pkt_pts_time=9.858333|pkt_dts_time=9.858333
frame|pkt_pts_time=9.900000|pkt_dts_time=9.900000
frame|pkt_pts_time=9.941667|pkt_dts_time=9.941667
frame|pkt_pts_time=9.983333|pkt_dts_time=9.983333
frame|pkt_pts_time=10.025000|pkt_dts_time=10.025000
frame|pkt_pts_time=10.066667|pkt_dts_time=10.066667
frame|pkt_pts_time=10.108333|pkt_dts_time=10.108333
frame|pkt_pts_time=10.150000|pkt_dts_time=10.150000
frame|pkt_pts_time=10.191667|pkt_dts_time=10.191667
frame|pkt_pts_time=10.233333|pkt_dts_time=10.233333
frame|pkt_pts_time=10.275000|pkt_dts_time=10.275000
frame|pkt_pts_time=10.316667|pkt_dts_time=10.316667
frame|pkt_pts_time=10.358333|pkt_dts_time=10.358333
frame|pkt_pts_time=10.400000|pkt_dts_time=10.400000
frame|pkt_pts_time=10.441667|pkt_dts_time=10.441667
frame|pkt_pts_time=10.483333|pkt_dts_time=10.483333
frame|pkt_pts_time=10.525000|pkt_dts_time=10.525000
frame|pkt_pts_time=10.566667|pkt_dts_time=10.566667
frame|pkt_pts_time=10.608333|pkt_dts_time=10.608333
frame|pkt_pts_time=10.650000|pkt_dts_time=10.650000
frame|pkt_pts_time=10.691667|pkt_dts_time=10.691667
frame|pkt_pts_time=10.733333|pkt_dts_time=10.733333
frame|pkt_pts_time=10.775000|pkt_dts_time=10.775000
frame|pkt_pts_time=10.816667|pkt_dts_time=10.816667
frame|pkt_pts_time=10.858333|pkt_dts_time=10.858333
[mpeg4 @ 0x31a2640] illegal dc vlc
[mpeg4 @ 0x31a2640] Error at MB: 3978
[mpeg4 @ 0x31a2640] concealing 4263 DC, 4263 AC, 4263 MV errors in I frame
frame|pkt_pts_time=10.900000|pkt_dts_time=10.900000
frame|pkt_pts_time=10.941667|pkt_dts_time=10.941667
frame|pkt_pts_time=10.983333|pkt_dts_time=10.983333
frame|pkt_pts_time=11.025000|pkt_dts_time=11.025000
frame|pkt_pts_time=11.066667|pkt_dts_time=11.066667
frame|pkt_pts_time=11.108333|pkt_dts_time=11.108333
stream|index=0|codec_name=mpeg4|codec_long_name=MPEG-4 part 2|profile=Simple
Profile|codec_type=video|codec_time_base=1/24|codec_tag_string=[16][0][0][0]|codec_tag=0x0010|width=1920|height=1080|coded_width=1920|coded_height=1080|has_b_frames=0|sample_aspect_ratio=1:1|display_aspect_ratio=16:9|pix_fmt=yuv420p|level=1|color_range=N/A|color_space=unknown|color_transfer=unknown|color_primaries=unknown|chroma_location=left|timecode=N/A|refs=1|quarter_sample=0|divx_packed=0|id=0x100|r_frame_rate=24/1|avg_frame_rate=24/1|time_base=1/90000|start_pts=126000|start_time=1.400000|duration_ts=877500|duration=9.750000|bit_rate=N/A|max_bit_rate=N/A|bits_per_raw_sample=N/A|nb_frames=N/A|nb_read_frames=234|nb_read_packets=N/A|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0


Attached you can find the appropriate sintel.pcap- and sintel.ts-file.

Alexander Dethof




--
View this message in context: http://ffmpeg-users.933282.n4.nabble.com/RTP-MPEGTS-streaming-with-FFMPEG-tp4672782p4672801.html
Sent from the FFmpeg-users mailing list archive at Nabble.com.
Carl Eugen Hoyos
2015-10-22 15:13:35 UTC
Permalink
Post by Alexander Dethof
$> ffmpeg -i sintel.hevc -f rtp_mpegts
-bsf:v hevc_mp4toannexb rtp://127.0.0.1:1234
You don't tell FFmpeg what it should do with your
input video stream, and it defaults to mpeg4 (asp)
encoding. My guess is that you wanted to use:
-c:v copy

(I don't know if the hevc bitstream filter is
necessary for rtp streaming, you will have to
find out.)

Carl Eugen
Alexander Dethof
2015-10-22 15:20:16 UTC
Permalink
Post by Carl Eugen Hoyos
-c:v copy
I am not sure if I understood you correctly. Thus I tried the following two
commands:

$> ffmpeg -i sintel.hevc -c:v copy -f rtp_mpegts rtp://127.0.0.1:1234
ffmpeg version N-76159-gda43e9e Copyright (c) 2000-2015 the FFmpeg
developers
built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04)
configuration: --prefix=/home/alexanderdethof/ffmpeg_build
--pkg-config-flags=--static
--extra-cflags=-I/home/alexanderdethof/ffmpeg_build/include
--extra-ldflags=-L/home/alexanderdethof/ffmpeg_build/lib
--bindir=/home/alexanderdethof/bin --enable-gpl --enable-libass
--enable-libfdk-aac --enable-libfreetype --enable-libmp3lame
--enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx
--enable-libx264 --enable-libx265 --enable-nonfree
libavutil 55. 4.100 / 55. 4.100
libavcodec 57. 8.100 / 57. 8.100
libavformat 57. 10.101 / 57. 10.101
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 12.100 / 6. 12.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.100 / 2. 0.100
libpostproc 54. 0.100 / 54. 0.100
Input #0, hevc, from 'sintel.hevc':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: hevc (Main), yuv420p(tv), 1920x1080, 24 fps, 24 tbr,
1200k tbn, 24 tbc
Output #0, rtp_mpegts, to 'rtp://127.0.0.1:1234':
Metadata:
encoder : Lavf57.10.101
Stream #0:0: Video: hevc, yuv420p, 1920x1080, q=2-31, 24 fps, 24 tbr,
90k tbn, 24 tbc
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
[mpegts @ 0x35cc680] first pts value must be set
av_interleaved_write_frame(): Invalid data found when processing input
frame= 1 fps=0.0 q=-1.0 Lsize= 0kB time=00:00:00.00 bitrate=N/A
video:55kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: unknown
Conversion failed!

$> ffmpeg -i sintel.hevc -c:v copy rtp://127.0.0.1:1234
ffmpeg version N-76159-gda43e9e Copyright (c) 2000-2015 the FFmpeg
developers
built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04)
configuration: --prefix=/home/alexanderdethof/ffmpeg_build
--pkg-config-flags=--static
--extra-cflags=-I/home/alexanderdethof/ffmpeg_build/include
--extra-ldflags=-L/home/alexanderdethof/ffmpeg_build/lib
--bindir=/home/alexanderdethof/bin --enable-gpl --enable-libass
--enable-libfdk-aac --enable-libfreetype --enable-libmp3lame
--enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx
--enable-libx264 --enable-libx265 --enable-nonfree
libavutil 55. 4.100 / 55. 4.100
libavcodec 57. 8.100 / 57. 8.100
libavformat 57. 10.101 / 57. 10.101
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 12.100 / 6. 12.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.100 / 2. 0.100
libpostproc 54. 0.100 / 54. 0.100
Input #0, hevc, from 'sintel.hevc':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: hevc (Main), yuv420p(tv), 1920x1080, 24 fps, 24 tbr,
1200k tbn, 24 tbc
[NULL @ 0x33984e0] Unable to find a suitable output format for
'rtp://127.0.0.1:1234'
rtp://127.0.0.1:1234: Invalid argument

With the hevc bitstream filter switched on, I get the same outputs.



--
View this message in context: http://ffmpeg-users.933282.n4.nabble.com/RTP-MPEGTS-streaming-with-FFMPEG-tp4672782p4672805.html
Sent from the FFmpeg-users mailing list archive at Nabble.com.
Carl Eugen Hoyos
2015-10-22 15:53:50 UTC
Permalink
[mpegts <at> 0x35cc680] first pts value must be set
FFmpeg always had issues with h264 timestamps, your
report indicates that the same might be true for hevc.
ffmpeg -r 25 -i input.hevc should work but does not.
Remuxing to mov first helps, you need the bitstream
filter then.

Carl Eugen

Loading...