Can only watch BBC Parliament and BBC Alba live

Hawes, Mark MARK.HAWES at au.fujitsu.com
Tue Sep 4 18:39:58 EDT 2012


On 03/09/2012 00:51, Hawes, Mark wrote:

>> problems. BBC Parliament and BBC Alba will play live OK but all other

>> "livetv" channels (e.g. BBC One, BBC Two, BBC News) will not. I'm 
>> using version 2.82 of get_iplayer (build c3aafce) running on a 
>> slackware 13.7 linux platform and playing the stream out through
cvlc.
>> The commands I am using are:  'get_iplayer --stream --modes=best 
>> --type=livetv "BBC Parliament" | cvlc -' which works, while 
>> 'get_iplayer --stream --modes=best --type=livetv "BBC One" | cvlc -'
does not.
>> I notice that the available modes for the two working channels are 
>> different, with BBC Parliament and Alba playing out OK using 
>> 'flashnormal' while BBC One and the other live channels try to use 
>> 'flashvhigh2' which is  unsuccessful. I have also tried explicitly 
>> specifying each of the available modes for these channels, but again 
>> to no avail.

> Sometimes --modes=best won't work and you need to specify explicit CDN

> sources in --modes.  For example, with BBC One try --modes=flashstd1 
> and if that fails try --modes=flashstd2.  Unfortunately, the "1" and
"2"
> suffixes don't always correspond to the same CDN for successive 
> invocations of get_iplayer.  The stream sources are generated 
> dynamically and get_iplayer only attempts to stream from the first one

> in order.  It may require a few attempts to land on a working CDN.

> Why is this necessary? The main entertainment channels like BBC One 
> are usually available on 2 CDNs with multiple encoding qualities on
each.
> However, the first CDN selected may not respond for some reason, or 
> the encoding quality you request may not be available on that CDN, or 
> you may be attempting to access a geo-locked CDN from outside the UK.

> You thus have to point get_iplayer to whichever CDN is actually 
> available at a given time.  BBC Parliament and BBC Alba are only 
> streamed from one CDN at a single encoding quality, so the above
shenanigans are not required.

Thanks for the quick response. I have done as you have suggested and
seem to have most Success using flashstd2. The command I used was:

get_iplayer-c3aafce/get_iplayer --stream --modes=flashstd2 --type=livetv
"BBC One" --debug | cvlc -

The stream plays for a very brief period (under a second) and then
stops. The log leading up to the failure looks as follows:

 get_iplayer v2.82, Copyright (C) 2008-2010 Phil Lewis
   This program comes with ABSOLUTELY NO WARRANTY; for details use
--warranty.
   This is free software, and you are welcome to redistribute it under
certain
   conditions; use --conditions for details.
 Matches:
 80003:  BBC One - live
 INFO: 1 Matching Programmes
 INFO: Checking existence of default version
 INFO: flashstd2 modes will be tried for version default
 INFO: Trying flashstd2 mode to record livetv: BBC One - live
 INFO: File name prefix = BBC_One_live_2012-09-04_220356

 WARNING: Your version of flvstreamer/rtmpdump does not support SWF
Verification  FLVStreamer v2.1c1
 (c) 2010 Andrej Stepanchuk, Howard Chu, The Flvstreamer Team; license:
GPL  Connecting ...
 Starting Live Stream
  .
  .
  .
   0fb0:  be 76 b4 c0 7b 43 8e a1  52 46 6f 60 f7 ee 9f 5f
.v..{C..RFo`..._  
   0fc0:  44 63 1c ed 4d 8d a5 8c  f0 02 eb 7f e7 98 1b 70
Dc..M..........p  
   0fd0:  bd ed 4b 4a a2 8f 66 cd  fc 72 6e 10 7c 60 66 83
..KJ..f..rn.|`f.  
   0fe0:  95 2f ac 8e 68 2b 2b 52  0a 95 75 62 4b 0c ff 1f
./..h++R..ubK...  
   0ff0:  f6 f2 ca 1f 23 30 18 78  b7 e6 8d 61 5c ff bd 1c
....#0.x...a\...  
 DEBUG2: RTMP_ReadPacket: fd=3
   0000:  c4                                                 .

   0000:  4e bd 32 b8 85 a8 a6 33  a2 ea ec 19 30 f0 88 be
N.2....3....0...  
   0010:  04 be 42 39 a2 71 ac 0a  24 45 09 8a 7b 9f 77 0f
..B9.q..$E..{.w.  
   0020:  fa df 8e d5 61 29 0a fb  90 24 5f 69 c3 de 62 b6
....a)...$_i..b.  
   0030:  5e 93 42 31 22 55 2a ad  50 cf 2e 0c 06 29 01 77
^.B1"U*.P....).w  
   0040:  52 c8 d6 77 5d 74 e5 ba  62 50 5f 68 6f 7c be d7
R..w]t..bP_ho|..  
   0050:  69 78 f0 81 b9 8a 2e 21  1a f4 56 13 73 0c cb 46
ix.....!..V.s..F  
   0060:  36 3f d0 eb 36 ce b3 24  6b 4f 8f bc 84 98 dc e9
6?..6..$kO......  
  .
  .
  .
  .
   0950:  f4 46 94 68 28 49 08 4a  69 1e 43 c5 d5 7d 0c 3b
.F.h(I.Ji.C..}.;  
   0960:  a8 ee cb ec 16 4a b5 a0  2c 37 56 0a 0f d4 49 ca
.....J..,7V...I.  
   0970:  c0 ba c6 11 a7 a8 b8 c1  00 fd 1f 4c 8b 53 0b 8c
...........L.S..  
   0980:  48 85 50 24 d4 da bc 75  3e 92 27 7f 80 66 57 3c
H.P$...u>.'..fW<  
   0990:  2c 61 22 9c 6e e1 40 45  35 3b a9 1e 26 2d f0 b3
,a".n. at E5;..&-..  
   09a0:  05 2a a8 33 9e c6 19 85  38 b1 39 a0 86 8c 67 1f
.*.3....8.9...g.  
   09b0:  d5 e8 26 6b c5 3b 2b fd  24 5e 7c 8e db 11 7b 1b
..&k.;+.$^|...{.  
   09c0:  fa 1c 39 ae 19 8b f4 a0  3f 46 51 25 8c 13 f8 9f
..9.....?FQ%....  
   09d0:  87 74 36 8d 1d 69 7e ab  d6 d3 99 51 1d 30 02 cc
.t6..i~....Q.0..  
   09e0:  a6 07 2c dc 58 b9 f7 11  5a f7 55 e1 3f da 8e dd
..,.X...Z.U.?...  
   09f0:  d2 f6 2d 1d a3 32 35 e8  ce 82 3d e2 0d be 95 0c
..-..25...=.....  
   0a00:  23 75 17 7f fc 5c 49 ea  3a 86 e1 99 8d 59 51 d2
#u...\I.:....YQ.  
   0a10:  82 bc fd d0 7f 67 be 86  df 2c 67 6f 43 c9 e6 33
.....g...,goC..3  
   0a20:  e2 20 55 f8 1d 0e 87 41  52 e3 ac 66 6c eb 5c 5a   .
U....AR..fl.\Z  
   0a30:  e5 20 75 26 b7 05 13 d9  95 c2 98 f2 c0 5f 6d 3a   .
u&........._m:  
   0a40:  19 a3 4e d8 59 fc dc 3f  f6 9f 24 e3 a3 e7 44 eb
..N.Y..?..$...D.  
   0a50:  b3 fd ff 9f 94 c6 eb be  73 c0 15 67 b3 15 e3 41
........s..g...A  
   0a60:  f9 4d 26 a3 56 6f 01                               .M&.Vo.

 DEBUG2: RTMP_ReadPacket: fd=3
   0000:  04 00 00 00 00 00 02 09  01 00 00 00
............      
   0000:  57 01                                              W.

 DEBUG2: RTMP_ReadPacket: fd=3
   0000:  02 00 00 00 00 00 06 04  00 00 00 00
............      
   0000:  00 1f 00 00 00 01                                  ......

 DEBUG: HandleCtrl, received ctrl. type: 31, len: 6
 DEBUG: HandleCtrl, Stream BufferEmpty 1
 DEBUG2: RTMP_ReadPacket: fd=3
   0000:  02 00 00 00 00 00 06 04  00 00 00 00
............      
   0000:  00 20 00 00 00 01                                  . ....

 DEBUG: HandleCtrl, received ctrl. type: 32, len: 6
 DEBUG: HandleCtrl, Stream BufferReady 1
 DEBUG2: RTMP_ReadPacket: fd=3
   0000:  04 00 00 00 00 00 05 09  01 00 00 00
............      
   0000:  17 02 00 00 00                                     .....

 WARNING: ignoring too small video packet: size: 5
 DEBUG2: RTMP_ReadPacket: fd=3
   0000:  04 00 00 00 00 00 00 08  01 00 00 00
............      
 WARNING: ignoring too small audio packet: size: 0
 DEBUG2: RTMP_ReadPacket: fd=3
   0000:  02 00 00 00 00 00 06 04  00 00 00 00
............      
   0000:  00 1f 00 00 00 01                                  ......

 DEBUG: HandleCtrl, received ctrl. type: 31, len: 6
 DEBUG: HandleCtrl, Stream BufferEmpty 1
 DEBUG2: RTMP_ReadPacket: fd=3
   0000:  02 00 00 00 00 00 06 04  00 00 00 00
............      
   0000:  00 20 00 00 00 01                                  . ....

 DEBUG: HandleCtrl, received ctrl. type: 32, len: 6
 DEBUG: HandleCtrl, Stream BufferReady 1
 DEBUG2: RTMP_ReadPacket: fd=3
   0000:  04 00 00 00 00 00 ac 14  01 00 00 00
............      
   0000:  02 00 08 6f 6e 53 74 61  74 75 73 00 00 00 00 00
...onStatus.....  
   0010:  00 00 00 00 05 03 00 05  6c 65 76 65 6c 02 00 06
........level...  
   0020:  73 74 61 74 75 73 00 04  63 6f 64 65 02 00 16 4e
status..code...N  
   0030:  65 74 53 74 72 65 61 6d  2e 50 61 75 73 65 2e 4e
etStream.Pause.N  
   0040:  6f 74 69 66 79 00 0b 64  65 73 63 72 69 70 74 69
otify..descripti  
   0050:  6f 6e 02 00 1e 50 61 75  73 69 6e 67 20 62 62 63
on...Pausing bbc  
   0060:  31 5f 69 6e 6c 65 74 5f  34 38 30 40 73 32 34 33
1_inlet_480 at s243  
   0070:  32 34 2e 00 07 64 65 74  61 69 6c 73 02 00 15 62
24...details...b  
   0080:  62 63 31 5f 69 6e 6c 65  74 5f 34 38 30 40 73 32
bc1_inlet_480 at s2  
   0090:  34 33 32 34 00 08 63 6c  69 65 6e 74 69 64 02 00
4324..clientid..  
   00a0:  08 48 45 4c 6f 45 6e 64  73 00 00 09
.HELoEnds...      
 DEBUG: RTMP_ClientPacket, received: invoke 172 bytes
 DEBUG: (object begin)
 DEBUG: Property: <Name:                  no-name., STRING:
onStatus>
 DEBUG: Property: <Name:                  no-name., NUMBER:      0.00>
 DEBUG: Property: NULL
 DEBUG: Property: <Name:                  no-name., OBJECT>
 DEBUG: (object begin)
 DEBUG: Property: <Name:                     level, STRING:      status>
 DEBUG: Property: <Name:                      code, STRING:
NetStream.Pause.Notify>
 DEBUG: Property: <Name:               description, STRING:      Pausing
bbc1_inlet_480 at s24324.>
 DEBUG: Property: <Name:                   details, STRING:
bbc1_inlet_480 at s24324>
 DEBUG: Property: <Name:                  clientid, STRING:
HELoEnds>
 DEBUG: (object end)
 DEBUG: (object end)
 DEBUG: HandleInvoke, server invoking <onStatus>
 DEBUG: HandleInvoke, onStatus: NetStream.Pause.Notify
 DEBUG2: RTMP_ReadPacket: fd=3
   0000:  02 00 00 00 00 00 06 04  00 00 00 00
............      
   0000:  00 1f 00 00 00 01                                  ......

 DEBUG: HandleCtrl, received ctrl. type: 31, len: 6
 DEBUG: HandleCtrl, Stream BufferEmpty 1
 DEBUG2: RTMP_ReadPacket: fd=3
   0000:  02 00 00 00 00 00 06 04  00 00 00 00
............      
   0000:  00 06 4b ba a5 ec                                  ..K...

 DEBUG: HandleCtrl, received ctrl. type: 6, len: 6
 DEBUG: HandleCtrl, Ping 1270523372
 DEBUG: sending ctrl. type: 0x0007
 DEBUG2: RTMP_SendPacket: fd=3, size=6
   0000:  42 00 00 00 00 00 06 04                            B.......

   0000:  00 07 4b ba a5 ec                                  ..K...

 DEBUG2: RTMP_ReadPacket: fd=3
 DEBUG: RTMPSockBuf_Fill, recv returned -1. GetSockError(): 11 (Resource
temporarily unavailable)
 ERROR: RTMP_ReadPacket, failed to read RTMP packet header
 DEBUG: WriteStream returned: -1
 Download may be incomplete (downloaded about 0.00%), try resuming
 DEBUG: Closing connection.
 INFO: Command exit code 2 (raw code = 512)
 INFO: Streaming failed with exit code 2
 DEBUG: Record using flashstd2 mode return code: 'abort'
 ERROR: aborting get_iplayer

This behaviour is consistent and very repeatable with the stream always
stopping within a second of starting.

Any idea what the problem is?

Mark.




More information about the get_iplayer mailing list