Page 1 of 2
[NEW] NetPlayerB for Podcasts and Mediathek
Posted: Thu Apr 04, 2013 6:53 pm
by boxbuchse
Hi,
i did a little coding on NetPlayerB for Samsung Widget Engine and
now you can add to XML/videoList.xml several Video Podcast URLs
*No Warranty* (tested on b650)
you don't need a developer account if you have telnet or ftp
if you have a directory /mtd_down/widgets with s on the end
means you have Samsung Widget Engine!
make a dir user and copy the NetPlayerB directory from the attachment in to it
now you should have e.g.
/mtd_down/widgets/user/NetPlayerB/config.xml
#ChangeLog for 0.02
- speeding up the displaying
- maximum entry's per feed = 3
only the TOP3 is displayed
- ENTER key in Stop mode Plays & tgl. Fullscreen
(this always annoys me)
- feed entry is valid even with no description
have fun
Re: [NEW] NetPlayerB for Podcasts and Mediathek
Posted: Fri Apr 05, 2013 11:04 am
by juusso
widget is really faster compared to original. Fetching of included video just few secs!
Sad it still won`t play IPTV tcp stream (multicast-udpxy-unicast tcp url like
http://192.168.1.1:7777/udp/225.6.7.1:49410)

locallist.xml:
Code: Select all
<?xml version="1.0"?>
<rss version="2.0">
<channel>
<title>LocalList</title>
<item>
<title>LTV</title>
<enclosure url="http://192.168.1.1:7777/udp/225.6.7.1:49410" type="video/mpeg"/>
<description>
LTV tcp
</description>
</item>
</channel>
</rss>
but result is blank screen and exlink debug...:
Code: Select all
/home/bnlee/brDVB_EU_CH/AP_GMF/Src/GeneCore/PlaybackEngine/SRC/PlaybackEngine.cpp:751: Semaphore m_Lock address: 385108c.
Parsing URL: URL=http://192.168.1.1:7777/udp/225.6.7.1:49410|GRAPH_NAME=[CONT_MP4][VIDEO_006][AUDIO_005].
DeInitializeGraph::take sem.
DeInitializeGraph::release sem.
DestroyGraph::taking sem.
DestroyGraph::releasing sem.
0 [HttpInputMediaComponent(HttpInputOutPort)] -> [TDMediaComponent(TDInPort)]
FindMediaComponentByName::taking sem.
FindMediaComponentByName::releasing sem.
/home/bnlee/brDVB_EU_CH/AP_GMF/Src/GeneCore/GCF/INC/CGCFCompFactory.h:58: === CGCFCompFactory.
+++ HttpInputMediaCompFactory.
[CHttpInputMediaComponent::CHttpInputMediaComponent(37)] CHttpInputMediaComponent constructor started.
+++ ~HttpInputMediaCompFactory.
/home/bnlee/brDVB_EU_CH/AP_GMF/Src/GeneCore/GCF/INC/CGCFCompFactory.h:63: === ~CGCFCompFactory.
FindMediaComponentByName::taking sem.
FindMediaComponentByName::releasing sem.
/home/bnlee/brDVB_EU_CH/AP_GMF/Src/GeneCore/GCF/INC/CGCFCompFactory.h:58: === CGCFCompFactory.
+++ TDMediaCompFactory.
[CTDMediaComponent::CTDMediaComponent(40)] CTDMediaComponent constructor.
+++ ~TDMediaCompFactory.
/home/bnlee/brDVB_EU_CH/AP_GMF/Src/GeneCore/GCF/INC/CGCFCompFactory.h:63: === ~CGCFCompFactory.
Trying to connect pins :
<HttpInputOutPort>
<TDInPort>
Trying media type:
data class: -1
major type: -1
sub type: 0
format type: 0
InitializeGraph::take sem.
[CHttpInputMediaComponent::Initialize(69)]------ CHttpInputMediaComponent::Initialize -----
Successfully created linear buffer handler.
IID_IBufferHandler interface returned.
<<<<<<<<<<<<<<<<<<<CGMFStream::CGMFStream()>>>>>>>>>>>>>>>>>>>>>>>
CHTTP initialization ok.
Entering PrepareConnection.
Begin to check the URL!
<<<<<<<<<<<<<<<CGMFStream Initializing.>>>>>>>>>>>>>
<<<<<<<<<<<<<<<<<<<CGMFHttp::CGMFHttp()>>>>>>>>>>>>>>>>>>>>>>>
Is not youtube URL.
Start connecting! lFilePos = 0
Get proxy!
Make http connection
before ====lFileLength= 0
Create Http Header
Filling Http request to the Header
connect() to make TCP connection!
Request: [GET /udp/225.6.7.1:49410 HTTP/1.0
Host: 192.168.1.1:7777
User-Agent: GMF/
Icy-MetaData: 1
Connection: close
]
http server response select, now can send request!
HTTP: send done.
after ====lFileLength= 0
HTTP: Getting HTTP response.
--- HTTP DEBUG HEADER --- START ---
protocol: [HTTP/1.1]
http minor version: [1]
uri: [(null)]
method: [(null)]
status code: [200]
reason phrase: [OK]
body size: [0]
Fields:
0 - Server: udpxy 1.0-23.0 (prod) standard [Linux 2.6.22.19 mips]
1 - Content-Type:application/octet-stream
--- HTTP DEBUG HEADER --- END ---
Content-Type: [application/octet-stream]
Begin to get head data!
Got HttpHdr
Leaving PrepareConnection.
6 (0): Initializing Component............
[CTDMediaComponent::Initialize(105)] Initialize...
Creating master buffer size as 2021376
Interface not supported.
IID_IHttpInputExtension interface returned.
[CTDMediaComponent::Initialize(168)] Stream size is 0 Bytes..
$$$$$ Init OK
7 (0): Initializing Component............
InitializeGraph::release sem.
Interface not supported.
GetAdditionalControl::take sem.
Interface not supported.
[CTDMediaComponent::GetInterface(320)] IID_IVideoOutputExtension interface returned.
GetAdditionalControl::release sem.
[CTDMediaComponent::SetDisplayInfo(1555)] SetDisplayInfo started.
[CTDMediaComponent::SetDisplayInfo(1578)] Penel Size is 1920 x 1080
[ERROR][SdVideo_Get():374] Parameter Range Error !!
[CTDUtil::SetVideoSize(1187)] Set size as [916,116,944,540]
[ERROR][SdVideo_Set():284] Parameter Range Error !!
FRCQ Not Good Frequence....skip!FrameRate[0]
Jpeg loading exception handling~!!! Set 50Hz
[CTDMediaComponent::SetDisplayInfo(1583)] CTDUtil::Status = 1
GetAdditionalControl::take sem.
Interface not supported.
[CTDMediaComponent::GetInterface(327)] IID_ITDExtension interface returned.
GetAdditionalControl::release sem.
CTDUtil::SetAudioOutputProperty [SPEAKER(0) | ON]
RunMediaComponents::taking sem.
pMediaComponent running: TDMediaComponent
pMediaComponent running: HttpInputMediaComponent
Waiting for device initialization....
[CTDMediaComponent::t_Main(511)] t_Main started.
MCG: Device Initialized Done => State_Running
RunMediaComponents::releasing sem.
GetAdditionalControl::take sem.
Interface not supported.
[CTDMediaComponent::GetInterface(320)] IID_IVideoOutputExtension interface returned.
GetAdditionalControl::release sem.
PauseMediaComponents::take sem.
PauseMediaComponents::take sem.
.
)] IID_IVideoOutputExtension interface returned.
) #####
[CTDMediaComponent::t_Main(589)] 100msec. Buffered 81920 Bytes..
pMediaComponent pause: HttpInputMediaComponent
pMediaComponent pause: TDMediaComponent
MediaComponentGraph Paused.
PauseMediaComponents::release sem.
[CTDMediaComponent::SetDisplayInfo(1555)] SetDisplayInfo started.
[CTDMediaComponent::SetDisplayInfo(1578)] Penel Size is 1920 x 1080
[ERROR][SdVideo_Get():374] Parameter Range Error !!
[CTDUtil::SetVideoSize(1187)] Set size as [0,0,1920,1080]
[ERROR][SdVideo_Set():284] Parameter Range Error !!
FRCQ Not Good Frequence....skip!FrameRate[0]
Player in pending for audio buffering.
Jpeg loading exception handling~!!! Set 50Hz
[CTDMediaComponent::SetDisplayInfo(1583)] CTDUtil::Status = 1
ResumeMediaComponents::take sem.
-------- CMD_RESUME --------
8 (0): CMD_RESUME: Resume.
pMediaComponent resumed: HttpInputMediaComponent
pMediaComponent resumed: TDMediaComponent
MediaComponentGraph Resumed.
ResumeMediaComponents::release sem.
[CTDMediaComponent::t_Main(626)] ##### Data Read Rate = 744727 (5818 kbps) #####
Getting id of player object for sending event.
Player resuming for audio buffering.
[EventHandler(432)] Bandwidth : 744727
[CTDMediaComponent::t_Main:717] >>>>>>>> Start of GetStreamInfo (81920)....
[CTDMediaComponent::GetStreamInfo(394)] Parsing info using ffmpeg
enter CMediaInfo::GetMediaTypeInfo
[GetMediaTypeInfoUsingFFMpeg] OPEN SUCCESS
[mpegts @ 0x3854610]Could not find codec parameters (Video: 0x0000, 704x576, 6599 kb/s)
[mpegts @ 0x3854610]Could not find codec parameters (Audio: 0x0000, 0 channels, s16)
===============[DUMP FORMAT]==============
* [FFMPEG LIBRARY] Ver. 2008/11/24(^__^) modified by C.Lucifer (0.4) *
Input #0, mpegts, from '/dtv/stream.tmp':
Duration: 00:00:01.12, start: 68811.267333, bitrate: 585 kb/s
Program 1
=========================================
before memset
after memset
inputformat name = mpegts
inputformat extension = (null)
<mpegts> format
Container : TS
pMediaInfo->tContainerInfo.nId = 5
pMediaInfo->nBitRate = 585142
pMediaInfo->nPcrPid = -1
pMediaInfo->nStreams=pFormatContext->nb_streams =3
pMediaInfo->tFileInfo.fileName = /dtv/stream.tmp
pMediaInfo->tFileInfo.fileSize = 81920
pMediaInfo->nVideoStream = 1
pMediaInfo->nAudioStream = 2
Changing Total time for TS or PS..
pMediaInfo->tContainerInfo.nTotalPlayTime =0
AudioStreamID =2
16 BitSample Format
Input ContainerType = 5
TD_VIDEO_FORMAT_NONE
=[ StreamInfo ]======================================
0,0,0,0,188,0 NONE AUIDO INFO
-----------------------------------------------------
[CTDMediaComponent::GetStreamInfo:462] <<<<<<<< End of GetStreamInfo....
*******************************************************************
[CTDMediaComponent::t_Main(814)] AUDIO Only Stream, Audio Format is 0..
*******************************************************************
[CTDMediaComponent::t_Main(836)] Total Time is 0 sec....
>>[ERR:TDsChelseaMpeg.cpp] Disconnect():722 - SDAL ERROR [-1] !!!
[ [ Debug:: pInfo->packetSize=188, m_lStreamTotalSize=0 ] ]
### SdAVDec_DemuxAllocate, m_bPumping = 1, mContainerType = 4
@@@@ container type = 4, video pid = 0x0, audio pid = 0x0
Source : 5376 Video ID : 0
Source : 4864 Window Type : 0 Back End Decoder Type : 0
[CTDMediaComponent::t_Main(896)] Before Set State
[CTDMediaComponent::t_Main(1079)] CMD_RESUME : GetState = 0
>>>>>>>> m_pTDControl->GetBuffer() returns 0 !!
[CTDMediaComponent::t_Main(146)] Feeder Start Thread created..
CTDUtil::PrepareFeeding()
[CTDMediaComponent::t_Main(1246)] Reads(0)/Total(0)...
[CTDMediaComponent::t_Main(1247)] Buffer Size changed from (144384) to (0)...
[CTDMediaComponent::t_Main(1313)] >>>>Error.. Total size is 0 !!
pTDiFeeder->Start OK
Finish Preparing Play
[CTDMediaComponent::t_Main(1246)] Reads(0)/Total(0)...
[CTDMediaComponent::t_Main(1247)] Buffer Size changed from (144384) to (0)...
[CTDMediaComponent::t_Main(1313)] >>>>Error.. Total size is 0 !!
[CTDMediaComponent::t_Main(1246)] Reads(0)/Total(0)...
[CTDMediaComponent::t_Main(1247)] Buffer Size changed from (144384) to (0)...
[CTDMediaComponent::t_Main(1313)] >>>>Error.. Total size is 0 !!
[CTDMediaComponent::t_Main(1246)] Reads(0)/Total(0)...
[CTDMediaComponent::t_Main(1247)] Buffer Size changed from (144384) to (0)...
[CTDMediaComponent::t_Main(1313)] >>>>Error.. Total size is 0 !!
[CTDMediaComponent::t_Main(1246)] Reads(0)/Total(0)...
[CTDMediaComponent::t_Main(1247)] Buffer Size changed from (144384) to (0)...
[CTDMediaComponent::t_Main(1313)] >>>>Error.. Total size is 0 !!
[CTDMediaComponent::t_Main(1246)] Reads(0)/Total(0)...
[CTDMediaComponent::t_Main(1247)] Buffer Size changed from (144384) to (0)...
Is this limitation of mediaplayer or somehow filelengh could ne injected to the header? Actually
same issue i`ve had with original version of NetPlayerB, i wonder if you have some ideas because of that.
Re: [NEW] NetPlayerB for Podcasts and Mediathek
Posted: Fri Apr 05, 2013 5:11 pm
by boxbuchse
hi juuso,
it can't be a matter of file length.
The working [Dance TV] is a stream without a file length at all.
But if
http://192.168.1.1:7777 is only a proxy for udp you should try
Microsoft Media Server Protocol
Opening an "mms://" URL will attempt to connect first with RTSP over UDP and if that fails it will attempt RTSP over TCP.
mms://225.6.7.1:49410
or
mms://192.168.1.1:7777/udp/225.6.7.1:49410
But anyway it is a matter of mediaplayer
if the mediaplayer of C series can handle multicast requests
maybe we can use this OBJECT (just a try)
bye
PS:it's very interesting to see a debuglog like this
Re: [NEW] NetPlayerB for Podcasts and Mediathek
Posted: Sat Apr 06, 2013 7:09 pm
by juusso
mms won`t work either. Bad luck.
I wonder you don`t use exlink cable to check debug

Re: [NEW] NetPlayerB for Podcasts and Mediathek
Posted: Sat Apr 06, 2013 10:53 pm
by mattberlin
I am very happy that there is so much improvement in this regard.
What is actually the Motivation of the following modification?
"- maximum entry's per feed = 3"
Re: [NEW] NetPlayerB for Podcasts and Mediathek
Posted: Sun Apr 07, 2013 9:16 am
by boxbuchse
hi,
i use this a lot myself. Does anybody have the same problem to start the Samsung Engine?
sometimes it takes a while until it starts or i have to cancel and start again.
the maximum entrys is very useful if you have a lot podcasts and every cast has 20 or more entrys
http://www.tagesschau.de/export/video-p ... agesschau/
usually you are interested in the new entrys
i will put that in videolist.xml as a global parameter
i thought
http://netplayer.24max.de/ is from netplayer team, but only because of the name.
Re: [NEW] NetPlayerB for Podcasts and Mediathek
Posted: Sun Apr 07, 2013 11:58 am
by mattberlin
Thank's boxbuchse!
Introducing a global parameter seems to be good way!
Yes, I also have problems starting the Samsung engine. When starting it the first time "Starting" followed by "Connecting". When starting the engine again ony "Connecting" appears for a while but the Samsung engine is not getting started. I always have to restart the TV.
Re: [NEW] NetPlayerB for Podcasts and Mediathek
Posted: Sun Apr 07, 2013 12:01 pm
by juusso
Same here, I@TV not always starts from first try, starting... connecting... and nothing. Perhaps local infolink server for B series could help?
Re: [NEW] NetPlayerB for Podcasts and Mediathek
Posted: Sun Apr 07, 2013 12:12 pm
by mattberlin
I'm very happy that I'm not the only one having those problems when starting @Internet.
Just another question.
This is my videoList.xml file
Code: Select all
<?xml version="1.0"?>
<rss version="2.0">
<channel>
<item>
<title>Tagesschau</title>
<link>http://netplayer.24max.de/ard/4326.xml</link>
</item>
<item>
<title>Tagesthemen</title>
<link>http://www.tagesschau.de/export/video-podcast/webl/tagesthemen</link>
</item>
<item>
<title>Abenteuer Forschung</title>
<link>http://www.zdf.de/ZDFmediathek/podcast/1193018</link>
</item>
<item>
<title>Quarks Co.</title>
<link>http://podcast.wdr.de/quarks.xml</link>
</item>
<item>
<title>Leschs Kosmos</title>
<link>http://www.zdf.de/ZDFmediathek/podcast/1167200</link>
</item>
<item>
<title>Local</title>
<link>XML/localList.xml</link>
</item>
</channel>
</rss>
For some reason "Tagesthemen" is not displayed in NetPlayerB. Do you have an idea?
BTW: In what way does NetPlayerB sort the entries of videoList.xml?
Re: [NEW] NetPlayerB for Podcasts and Mediathek
Posted: Sun Apr 07, 2013 7:56 pm
by boxbuchse
hi,
the
tagesschau or similar podcasts have a xslt stylesheet
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="/resources/xsl/videopodcast.xsl" type="text/xsl"?>
<rss ..
sadly our engine doesn't support it. a very common bug in old browsers. now in that case i parse the document
via javascript but it cause an encoding problem witch i couldn't fix
the sorting is a my next headline. at the moment because of speed all the videoList urls loaded at the same time
and if the request is complete the entry is added to the list (first-come, first-served).
maximum entrys in videoList.xml
Code: Select all
<rss version="2.0">
<channel maxItems="3">
<item>
<title>tageswebschau</title>
<link>http://www.tagesschau.de/export/video-podcast/webm/tageswebschau/</link>
..
#ChangeLog for 0.03
- maximum entrys in videoList.xml
- somehow supporting xslt stylesheet tag
- bugfix: no title or no url issue
have fun