[FFmpeg-trac] #995(undetermined:new): Selecting a stream from a multi-service mpegts
FFmpeg
trac at avcodec.org
Sun Feb 12 00:52:03 CET 2012
#995: Selecting a stream from a multi-service mpegts
-------------------------------------+-------------------------------------
Reporter: burek | Type:
Status: new | enhancement
Component: | Priority: normal
undetermined | Version:
Keywords: | unspecified
Blocking: | Blocked By:
Analyzed by developer: 0 | Reproduced by developer: 0
-------------------------------------+-------------------------------------
Hi, it would be nice to have an option to select (extract) only a specific
service from within an mpegts multi programs stream. I'm not sure if I
named each thing correctly, but here is an example:
{{{
mpegts @ 0x1ffd3a0] Estimating duration from bitrate, this may be
inaccurate
Input #0, mpegts, from 'udp://@:5000':
Duration: N/A, start: 34272.976700, bitrate: 41672 kb/s
Program 52
Metadata:
service_name : PenthouseTV
service_provider:
Stream #0:22[0x710], 0, 1/90000: Video: mpeg2video ([2][0][0][0] /
0x0002), 90k tbr, 90k tbn
Stream #0:23[0x711], 0, 1/90000: Audio: mp3 ([3][0][0][0] / 0x0003), 0
channels, s16
Program 53
Metadata:
service_name : Juicy
service_provider:
Stream #0:8[0x720], 0, 1/90000: Video: mpeg2video ([2][0][0][0] /
0x0002), 90k tbr, 90k tbn
Stream #0:9[0x721], 0, 1/90000: Audio: mp3 ([3][0][0][0] / 0x0003), 0
channels, s16
Program 54
Metadata:
service_name : BN BOSNIA
service_provider:
Stream #0:10[0x420], 0, 1/90000: Video: mpeg2video ([2][0][0][0] /
0x0002), 90k tbr, 90k tbn
Stream #0:11[0x421], 0, 1/90000: Audio: mp3 ([3][0][0][0] / 0x0003), 0
channels, s16
Program 55
Metadata:
service_name : BN Music
service_provider:
Stream #0:12[0xfba], 0, 1/90000: Video: mpeg2video ([2][0][0][0] /
0x0002), 90k tbr, 90k tbn
Stream #0:13[0xfcc], 0, 1/90000: Audio: mp3 ([3][0][0][0] / 0x0003), 0
channels, s16
Program 56
Metadata:
service_name : Al Maghribiya
service_provider:
Stream #0:0[0xfb7], 66, 1/90000: Video: mpeg2video (Main)
([2][0][0][0] / 0x0002), yuv420p, 480x480 [SAR 4:3 DAR 4:3], 1001/60000,
15000 kb/s, 31.44 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0:1[0xfc1], 90, 1/90000: Audio: mp2 ([3][0][0][0] / 0x0003),
48000 Hz, stereo, s16, 128 kb/s
Program 59
Metadata:
service_name : TVK
service_provider:
Stream #0:14[0x12c], 0, 1/90000: Video: mpeg2video ([2][0][0][0] /
0x0002), 90k tbr, 90k tbn
Stream #0:15[0x12d], 0, 1/90000: Audio: mp3 ([3][0][0][0] / 0x0003), 0
channels, s16
Program 60
Metadata:
service_name : Telesur
service_provider:
Stream #0:2[0x13c], 68, 1/90000: Video: mpeg2video (Main)
([2][0][0][0] / 0x0002), yuv420p, 704x480 [SAR 10:11 DAR 4:3], 1001/60000,
2750 kb/s, 33.53 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0:25[0x13d], 90, 1/90000: Audio: mp2 ([3][0][0][0] / 0x0003),
48000 Hz, stereo, s16, 112 kb/s
Program 62
Metadata:
service_name : Canal Algerie
service_provider:
Stream #0:16[0x4c4], 90, 1/90000: Audio: mp2 ([3][0][0][0] / 0x0003),
48000 Hz, stereo, s16, 128 kb/s
Stream #0:17[0x4ec], 67, 1/90000: Video: mpeg2video (Main)
([2][0][0][0] / 0x0002), yuv420p, 544x480 [SAR 20:17 DAR 4:3], 1001/60000,
3150 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Program 64
Metadata:
service_name : Al Maaref
service_provider:
Stream #0:3[0x12a], 67, 1/90000: Video: mpeg2video (Main)
([2][0][0][0] / 0x0002), yuv420p, 544x480 [SAR 20:17 DAR 4:3], 1001/60000,
1790 kb/s, 34.79 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0:4[0x12b], 90, 1/90000: Audio: mp2 ([3][0][0][0] / 0x0003),
48000 Hz, stereo, s16, 112 kb/s
Program 65
Metadata:
service_name : Syrian Drama
service_provider:
Stream #0:18[0x450], 67, 1/90000: Video: mpeg2video (Main)
([2][0][0][0] / 0x0002), yuv420p, 704x480 [SAR 10:11 DAR 4:3], 1001/60000,
2750 kb/s, 31.42 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0:19[0x451], 90, 1/90000: Audio: mp2 ([3][0][0][0] / 0x0003),
48000 Hz, mono, s16, 112 kb/s
Program 72
Metadata:
service_name : Chaine 1
service_provider:
Stream #0:20[0x5fd], 95, 1/90000: Audio: mp2 ([3][0][0][0] / 0x0003),
48000 Hz, stereo, s16, 256 kb/s
Program 73
Metadata:
service_name : Radio Internationale
service_provider:
Stream #0:24[0x5fe], 95, 1/90000: Audio: mp2 ([3][0][0][0] / 0x0003),
48000 Hz, stereo, s16, 256 kb/s
Program 74
Metadata:
service_name : BN Bosnia Radio
service_provider:
Stream #0:21[0x422], 0, 1/90000: Audio: mp3 ([3][0][0][0] / 0x0003), 0
channels, s16
Program 167
Metadata:
service_name : CNC World English
service_provider:
Stream #0:6[0x10f5], 64, 1/90000: Video: mpeg2video (Main)
([2][0][0][0] / 0x0002), yuv420p, 704x480 [SAR 10:11 DAR 4:3], 1001/60000,
15000 kb/s, 35.06 fps, 29.97 tbr, 90k tbn, 59.94 tbc
Stream #0:7[0x10f6], 90, 1/90000: Audio: mp2 ([3][0][0][0] / 0x0003),
48000 Hz, stereo, s16, 128 kb/s
Program 458
Metadata:
service_name : Radio BIR
service_provider:
Stream #0:5[0x212], 0, 1/90000: Audio: mp3 ([3][0][0][0] / 0x0003), 0
channels, s16
Program 460
Metadata:
service_name : Radio Glas Drine
service_provider:
Stream #0:26[0x452], 0, 1/90000: Audio: mp3 ([3][0][0][0] / 0x0003), 0
channels, s16
[libx264 @ 0x21a8ac0] using mv_range_thread = 24
[libx264 @ 0x21a8ac0] using cpu capabilities: MMX2 SSE2Fast FastShuffle
SSEMisalign LZCNT
[libx264 @ 0x21a8ac0] profile High, level 3.0
[libx264 @ 0x21a8ac0] 264 - core 120 r2164 da19765 - H.264/MPEG-4 AVC
codec - Copyleft 2003-2012 - http://www.videolan.org/x264.html - options:
cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1
psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1
cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=9
sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0
constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1
weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40
intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60
qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
[mpeg2video @ 0x2038120] detected 6 logical cores
Output #0, flv, to '/mnt/encoder/test.avi':
Metadata:
encoder : Lavf54.0.100
Stream #0:0, 0, 1/1000: Audio: mp3 ([2][0][0][0] / 0x0002), 44100 Hz,
0 channels, s16, 128 kb/s
Stream #0:1, 0, 1/1000: Video: h264 ([7][0][0][0] / 0x0007), yuv420p,
704x480, 1001/30000, q=-1--1, 1k tbn, 29.97 tbc
Stream mapping:
Stream #0:5 -> #0:0 (mp3 -> libmp3lame)
Stream #0:6 -> #0:1 (mpeg2video -> libx264)
}}}
So, if one wants to extract the "service_name : CNC World English",
both audio/video, then the command would look something like:
{{{
ffmpeg -f mpegts -i udp://@:5000 -mpegts_select_service_name "CNC World
English" -vcodec copy -acodec copy ...
}}}
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/995>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list