Jump to content

IPhone/IPod touch support


Lars_MQ

Recommended Posts

By the way, the following page after RECORDINGS do not have any headings/titles. Hope you can sort this out. Thanks.

Oh I forgot to include the current language file. Sorry...

Link to comment
  • Replies 300
  • Created
  • Last Reply

Top Posters In This Topic

  • Lars_MQ

    95

  • aht961

    40

  • Bossmann

    18

  • ml 05019

    16

Top Posters In This Topic

Posted Images

I guessed so. By the way, I realized that indeed we are talking about real time H.264 conversion, which really needs horse power. Even it takes ages for my iMac (3.06GHz Core 2 Duo Pentium) to do video conversion with a dedicated hardware decoder. Could you implement a non-H264 codec conversion like basic mpeg4 (mv4) coding or something else which QT can handle? Otherwise an investment in the server in order to make streaming to iphone possible may not be a attractive option.

 

Earlier, the server did not handle any video decoding at all. Now, I understand why AMD 2,5G cannot keep up with the task. This explains also why 3GHz Desktop client fails to stream this H264 material. Any way this almost went off-topic so if you want please feel free to remove the last part of this thread including my notes - i.e RC is functioning well, but know with ffmpeg videoconversion the server must be a heavy worker B)

Edited by aht961
Link to comment

No, the only way for livestreaming is converting into a ts with h264 encoded video. For everything else you have to do offline encoding. You can countercheck it with the "Air video server" and player, it uses the same principle. The only thing we can do is tweaking the ffmpeg settings.

I have one thing corrected, I wasn't aware of. The resolution must be a multiple of 16 to get the best performance. I changed it now (by padding), hopefully it has some effect.

Link to comment

well there is no finnish translation for the new stuff.

 

update the recordings' database with the recent version in web page.

please explain a little more.

Link to comment

It has happened earlier as well. After upgrading I logged to the web server and found out that all titles are in English (I am talking about the normal web interface, not iPhone this time). I wanted to check the older recordings and made an database update and clean, after which I got an empty page. Sorry I will not be able to test before sunday since I am away from home.

Edited by aht961
Link to comment
No, the only way for livestreaming is converting into a ts with h264 encoded video. For everything else you have to do offline encoding. You can countercheck it with the "Air video server" and player, it uses the same principle. The only thing we can do is tweaking the ffmpeg settings.

I have one thing corrected, I wasn't aware of. The resolution must be a multiple of 16 to get the best performance. I changed it now (by padding), hopefully it has some effect.

 

On my machine Airvideo works fine streaming mpeg2-sd recordings to my Iphone on WiFi and 3G , DVBviewers RS still only works for 1-2 min testet with .latest 84, CPU around 30-40%

 

Noticed that air video almost uses twice as much memory than RS does, is there any other diffrence betwen them, CPU handling etc?

Link to comment

thanks for your answer

No the channel is correctly tuned .I can see this channel on other pc and the cam decrypt it without problem.

as i write before i can open the stream directly in vlc

before encoding by ffmepg the stream is ok

I think ffmepg doesn't recognize the stream.

Link to comment
You also need:

FFmpeg Revision 18639 for Win32 extract it into the program folder of the recording service. Not every ffmpeg version works correctly. The one mentioned here works. So stick to it in the beginning and make sure it works for you also, then you can experiment with newer ffmpeg revisions. But be warned they didn't work for me.

 

I installed the latest version of RS from memberarea and put ffmpeg into DVBViewer program directory (where RS is installed too).

 

After pressing the stream button in the iphone web interface i can see a quicktime area. But the play sign in the center of the area is disabled.

 

Any idea why playback doesn't work? TV with DVBViewer client works fine. Below you'll find some entries from the log file:

 

03.02.10 19:19:03.812 TBDACITTModuleSingle evalPMT -1
03.02.10 19:19:03.812 TBDACITTModuleSingle.OnSlotStatus Status: 2 - ModuleType: GiGa-Blue 1.22
03.02.10 19:19:04.218 FFMPEG			   Last message repeated 387 times
03.02.10 19:19:04.218 FFMPEG		   [mpeg2video @ 0x3ef6e0]ac-tex damaged at 31 34
03.02.10 19:19:04.218 FFMPEG		   [mpeg2video @ 0x3ef6e0]ac-tex damaged at 12 33
03.02.10 19:19:04.218 FFMPEG		   [mpeg2video @ 0x3ef6e0]invalid mb type in I Frame at 0 29
03.02.10 19:19:04.218 FFMPEG		   [mpeg2video @ 0x3ef6e0]invalid mb type in I Frame at 0 30
03.02.10 19:19:04.218 FFMPEG		   [mpeg2video @ 0x3ef6e0]invalid mb type in I Frame at 0 31
03.02.10 19:19:04.218 FFMPEG		   [mpeg2video @ 0x3ef6e0]invalid mb type in I Frame at 2 32
03.02.10 19:19:04.218 FFMPEG		   [mpeg2video @ 0x3ef6e0]invalid mb type in I Frame at 0 33
03.02.10 19:19:04.218 FFMPEG		   [mpeg2video @ 0x3ef6e0]ac-tex damaged at 0 34
03.02.10 19:19:04.218 FFMPEG		   [mpeg2video @ 0x3ef6e0]invalid mb type in I Frame at 0 35
03.02.10 19:19:04.218 FFMPEG		   [mpeg2video @ 0x3ef6e0]Warning MVs not available
03.02.10 19:19:04.218 FFMPEG		   [mpeg2video @ 0x3ef6e0]concealing 315 DC, 315 AC, 315 MV errors
03.02.10 19:19:04.218 FFMPEG		   [mpegts @ 0x176d010]dts < pcr, TS is invalid
03.02.10 19:19:04.218 FFMPEG		   frame=  180 fps= 44 q=33.0 size=	 447kB time=7.08 bitrate= 517.3kbits/s	
03.02.10 19:19:04.296 Split			2047
03.02.10 19:19:04.734 FFMPEG		   frame=  193 fps= 42 q=33.0 size=	 488kB time=7.61 bitrate= 525.8kbits/s	
03.02.10 19:19:05.218 FFMPEG		   frame=  206 fps= 41 q=33.0 size=	 523kB time=8.09 bitrate= 529.6kbits/s	
03.02.10 19:19:05.734 FFMPEG		   frame=  218 fps= 39 q=33.0 size=	 554kB time=8.59 bitrate= 527.9kbits/s	
03.02.10 19:19:06.218 FFMPEG		   frame=  230 fps= 38 q=33.0 size=	 581kB time=9.12 bitrate= 521.9kbits/s	
03.02.10 19:19:06.312 Split			2016
03.02.10 19:19:06.765 FFMPEG		   frame=  244 fps= 37 q=33.0 size=	 605kB time=9.58 bitrate= 517.7kbits/s	
03.02.10 19:19:07.265 FFMPEG		   frame=  257 fps= 36 q=33.0 size=	 647kB time=10.13 bitrate= 523.0kbits/s	
03.02.10 19:19:07.796 FFMPEG		   frame=  272 fps= 36 q=33.0 size=	 670kB time=10.61 bitrate= 517.8kbits/s	
03.02.10 19:19:08.328 FFMPEG		   frame=  282 fps= 34 q=33.0 size=	 705kB time=11.21 bitrate= 515.3kbits/s	
03.02.10 19:19:08.343 Split			2031

Link to comment
encrypted or FTA channel?

 

ARD (SD, FTA)

 

tested with SAT1, RTL and ZDF too. Should I try to deactivate the CAM?

Link to comment
worth a try, just in case it does something stupid. ;)

 

Deactivated CAM, rebooted PC, same effect. In iPhone setup plugins are enabled. After pressing the start stream button on the web interface there's a ffmpeg process running on the PC.

 

So everything seems to be fine, but no video. How long does it take until the video playback starts? I was waiting 30 seconds before pressing stop.

 

BTW: "Normal" streaming to the iPhone over WLAN works fine (playing the stream wit vlc for iPhione).

Link to comment

It should take no more than 10 - 12 seconds for LiveTV and a lot less for recordings.

 

Maybe you could try the version mentioned 4 posts above? It works for mpeg2 for me but h264 channel/recordings don't.

Link to comment
Hi Lars for me it was a ffmpeg issu with ffmepg svn-21575 all channels are ok

 

thanks for your very good job

 

where can i download this version. It's not on the page Lars mentioned some posts before.

Link to comment
For dbraner the link ffmepg 21575

 

Thanks for uploading. pthreadgc2.dll was needed in addition. But still no success. Giving up ... for now.

 

As far as i can see in the debug log ffmpeg is encoding and streaming. But I'm still not able to click play in the quicktime frame on my iphone. The play symbol is striked.

Link to comment

I still have problems with the streaming that it stops after 1-2 min. I'll try to attach a debuglog tonight or this weekend. Is there any one else that is experiencing this problem to or maybe Has experienced it and solved it?

 

/ D

Link to comment
As far as i can see in the debug log ffmpeg is encoding and streaming. But I'm still not able to click play in the quicktime frame on my iphone. The play symbol is striked.

I have the same effect mit the 21575rev and h264. The created stream isn't correct. I'm sorry but I can't help more, I don't know enough about ffmpeg...

Link to comment
I have the same effect mit the 21575rev and h264. The created stream isn't correct. I'm sorry but I can't help more, I don't know enough about ffmpeg...

 

It's now working with ffmpeg 18639 :rolleyes:

 

I simply went back to 18639 and started streaming. I don't know why it's working now. Maybe it depends on the TS of the channel ??

 

I've tested 3 channels: ARD, ZDF and RTL. The only one which is not working is ARD with medium quality.

 

Is it possible to store the ffmpeg commandline switches for each type of stream in a config file? This will make it easier to test ffmpeg settings.

Edited by dbraner
Link to comment

I have made some testing during the evening with the streaming to the iphone. The thing that I noticed was that ffmpeg starts streaming and after approx 1 minute the stream stops but ffmpeg is still running (but not using any cpu).

 

I attached the svcdebug.log.

 

There is one time that I start the stream on the iphone and the other time when I just start the stream but does not watch it (not hitting "Play" button).

I believe that quicktime said to me 2 times that the format of the stream was not supported but after a retry the stream worked.

 

/ D

Copy_of_svcdebug.log

Edited by duja
Link to comment

Well this is most likely an ffmpeg issue in some kind. The stream ffmpeg gets is the same every upnp device gets, a simple ts stream.

 

One thing for sure

 

- streaming a h264/AC3 channel needs at least a 2.6 GHz dualcore CPU (only intel tested).

 

- streaming a MPEG2 SD channel needs at least a 1.5 Ghz dualcore CPU (tested with my notebook and a ts recording).

 

As you see, you need Power. Remember this is a real time (or faster than realtime for recordings if possible) conversion to a h264 video.

Link to comment
for h264 channels you need a lot of power <...> It seems ffmpeg does/can not use multiple cores for h264.

Well, changelog for latest K-lite codec pack says:

Changed default H.264 decoder from ffdshow (libavcodec) to ffdshow (ffmpeg-mt)

This gives better performance on computers with multiple CPU cores

that is, ffmpeg can handle multicore after all.

But, do I understand it right, the service will not detect ffmpeg unless it's installed right into DVBViewer folder? That is, it won't detect ffmpeg as part of K-lite/ffdshow installation?

Edited by ml 05019
Link to comment
Well this is most likely an ffmpeg issue in some kind. The stream ffmpeg gets is the same every upnp device gets, a simple ts stream.

 

One thing for sure

 

- streaming a h264/AC3 channel needs at least a 2.6 GHz dualcore CPU (only intel tested).

 

- streaming a MPEG2 SD channel needs at least a 1.5 Ghz dualcore CPU (tested with my notebook and a ts recording).

 

As you see, you need Power. Remember this is a real time (or faster than realtime for recordings if possible) conversion to a h264 video.

When streaming works ffmpeg is using 30% cpu which is not much.

Then suddenly it just stops streaming and the cpu is zero in utilisation.

 

Anyway a debug option to ffmpeg could be added to find out some more

about why the stream dies?

Link to comment

You could try setting the loglevel in the prefs in iphonepref.ini. The service does echo all output of ffmpeg to the svcdebug.log file. Maybe you find something there. I'm not a ffmpeg specialist, so no much help from my side here, sorry...

 

BTW for tests always use recordings, no liveTV. If it works with recordings then you can try LiveTV.

Link to comment

I think the current version of ffmpeg does not support more than one core. You can verify this by looking at the CPU/Core load during streaming and the number of active threads used by ffmpeg process.

Link to comment
for tests always use recordings, no liveTV. If it works with recordings then you can try LiveTV.

wondering what I did wrong - but for me, only live TV works. If I try to stream a recording, I don't even see a ffmpeg.exe process to appear in Task manager. Using your recommended ffmpeg build from page 2.

Link to comment
any non Ansi filenames?
but of course :) since DVBViewer 4.3 started to record files with these non-unicode symbols in filenames, it's hard to find a file without them on my PC. Is that the reason, or you still need a log file?
Link to comment

×
×
  • Create New...