Modify
Warning Please read the Ticket HowTo before creating or commenting on a ticket. Failure to do so may cause your ticket to be rejected or result in a slower response.

Opened 17 months ago

Closed 12 months ago

Last modified 11 months ago

#11263 closed Bug Report - Crash (fixed)

Airplay Couldn't open decoder for: http://___.mov

Reported by: Roy Underwood <royunderwood7@…> Owned by: jyavenard
Priority: minor Milestone: 0.26.1
Component: MythTV - Airplay Version: 0.26
Severity: medium Keywords: Airplay Frontend
Cc: Ticket locked: no

Description (last modified by dekarl)

When attempting to use AirPlay?, Playing any video content, frontend crashes and logs:

==> frontend.log <==

2012-11-28 20:57:46.660983 I  AirPlay: Method: POST URI: /play
2012-11-28 20:57:46.661105 I  PList: Parsing binary plist (159 bytes)
2012-11-28 20:57:46.661136 I  PList: Parse complete.
2012-11-28 20:57:46.677767 I  TV: Creating TV object
2012-11-28 20:57:46.745474 N  Resuming idle timer
2012-11-28 20:57:46.745585 N  Suspending idle timer
2012-11-28 20:57:46.751737 I  TV: Created TvPlayWindow.
2012-11-28 20:57:46.804733 I  RAOP Device: Receiving new playback message
2012-11-28 20:57:46.809606 I  TV: Attempting to change from None to WatchingVideo
2012-11-28 20:57:46.912996 I  StreamRingBuf(http://10.100.52.50:7001/1/1ab0fcf7-6665-54da-a1be-98639fbf1b4b.MOV): Trying http://10.100.52.50:7001/1/1ab0fcf7-6665-54da-a1be-98639fbf1b4b.MOV (allow seeks: 1
2012-11-28 20:57:47.229238 I  Pulse: PulseAudio suspend OK
2012-11-28 20:57:47.281379 N  AudioPlayer: Enabling Audio
2012-11-28 20:57:47.957513 E  AFD: avformat err(-1094995529) on avformat_open_input call.
2012-11-28 20:57:47.957544 E  Couldn't open decoder for: http://10.100.52.50:7001/1/1ab0fcf7-6665-54da-a1be-98639fbf1b4b.MOV
2012-11-28 20:57:47.957562 E  Player(0): Unable to open video file.
2012-11-28 20:58:07.991566 E  playCtx: StartPlaying() Failed to start player
2012-11-28 20:58:08.159786 I  Pulse: PulseAudio resume OK
2012-11-28 20:58:08.222731 I  TV: Main UI disabled.
2012-11-28 20:58:08.222796 I  TV: Entering main playback loop.
Handling Segmentation fault

==> mythlogserver.20121128073812.1349.log <==

2012-11-28 20:58:14.443705 I [1349/1357] LogForward loggingserver.cpp:1204 (expireClients) - Expiring client 008f6f1d6a6e72403ea7093fd840daeadd (#2)

==> MythTV Info <==

MythTV Version : 0.26.0-1.fc17 (v0.26.0-28-ge3087dd)
MythTV Branch : fixes/0.26
Network Protocol : 75
Library API : 0.26.20120822-1
QT Version : 4.8.2
Options compiled in:
 linux release use_hidesyms using_alsa using_jack using_oss using_pulse using_pulseoutput using_backend using_bindings_perl using_bindings_python using_bindings_php using_crystalhd using_dvb using_firewire using_frontend using_hdhomerun using_ceton using_hdpvr using_iptv using_ivtv using_joystick_menu using_libcrypto using_libdns_sd using_libfftw3 using_libxml2 using_libudf using_lirc using_mheg using_opengl_video using_qtwebkit using_qtscript using_qtdbus using_v4l2 using_x11 using_xrandr using_xv using_bindings_perl using_bindings_python using_bindings_php using_mythtranscode using_opengl using_vaapi using_vdpau using_ffmpeg_threads using_live using_mheg using_libass using_libxml2 using_libudf

==> OS Info <==

Linux mythtv.royunderwood.com 3.6.7-4.fc17.x86_64 #1 SMP Tue Nov 20 19:40:01 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux   

                   total       used       free     shared    buffers     cached
Mem:          1994       1923         70          0         25       1104
-/+ buffers/cache:        793       1201
Swap:           97         97          0

Filesystem             Size  Used Avail Use% Mounted on
rootfs                  11G  9.1G  1.1G  90% /
devtmpfs               981M     0  981M   0% /dev
tmpfs                  998M   92K  998M   1% /dev/shm
tmpfs                  998M  2.9M  995M   1% /run
/dev/sda2               11G  9.1G  1.1G  90% /
tmpfs                  998M     0  998M   0% /sys/fs/cgroup
tmpfs                  998M     0  998M   0% /media
/dev/sda1              146M   87M   52M  63% /boot
/dev/sda3              448G  308G  118G  73% /myth
/dev/sdb1              917G  761G  110G  88% /myth/movies

==> Notes <==

Audio plays fine via AirPlay

Attachments (1)

Logs.rtf (3.9 KB) - added by Roy Underwood <royunderwood7@…> 17 months ago.
Logs in Text Format

Download all attachments as: .zip

Change History (12)

Changed 17 months ago by Roy Underwood <royunderwood7@…>

Logs in Text Format

comment:1 Changed 17 months ago by info@…

Same problem here. I am using mythbuntu 12.04 with mythtv v0.26.0-53-gb28041a (fixes/0.26), updated daily. I have an iPhone 4. Playing Music via Airplay works. Playing videos using the YouTube? app also works. What does not work is playing videos I recorded with the iphone (from the camera roll). I get this error in the frontend log:

avformatdecoder.cpp:978 (OpenFile?) AFD: avformat err(-1094995529) on avformat_open_input call

It takes about ten seconds and then the frontend crashes. If needed, I can provide a sample video recording.

comment:2 Changed 14 months ago by dekarl

  • Description modified (diff)

comment:3 Changed 12 months ago by dekarl

  • Component changed from MythTV - General to MythTV - RAOP
  • Milestone 0.26.1 deleted
  • Owner set to jyavenard

this may have been fixed in [75541357af] in master lately

comment:4 Changed 12 months ago by jyavenard

Playback of .MOV straight from the iPhone doesn't work at this stage, I need to track why.
If the file is local then it played, if over http then it doesn't. Note that it fails using ffplay too, so the issue is likely in ffmpeg itself

comment:5 Changed 12 months ago by jyavenard

I believe this is linked to a similar issue using ffplay
https://ffmpeg.org/trac/ffmpeg/ticket/2513

comment:6 Changed 12 months ago by jyavenard

  • Keywords Crash removed

comment:7 Changed 12 months ago by jyavenard

  • Status changed from new to accepted

comment:8 Changed 12 months ago by Jean-Yves Avenard <jyavenard@…>

  • Resolution set to fixed
  • Status changed from accepted to closed

In 3345a03162f704d70081fe558d4ce6e7659bf323/mythtv:

Reduce buffer size used while scanning media.

For some reasons, when playing a MOV file by AirPlay? from an iPhone fails when the buffer is too big. So add a method for specific stream allowing to temporarily reduce the size of the buffer. I suspect an issue in FFmpeg caching code.
This allows to work around it, without investigating too much the "why".

Fixes #11263

comment:9 Changed 12 months ago by Jean-Yves Avenard <jyavenard@…>

In 8b8ec72b005ecf1cb9d36bb4f82469b3718fefb4/mythtv:

Rewrite of StreamingRingBuffer::safe_read

safe_read was based on FFmpeg's ffurl_read_complete, however when an EOF or an error is encountered, ffurl_read_complete returns the error code rather than the number of bytes read so far.
Rather than wait for FFmpeg to fix it (ref: https://ffmpeg.org/trac/ffmpeg/ticket/2537) ; work around it.
safe_read now will set errno as expected and always return a value >= 0 representing the number of bytes actually read.

Fixes #11263

comment:10 Changed 11 months ago by Jean-Yves Avenard <jyavenard@…>

In 6d1ee08f14b70be52104dce8609f5953426e0527/mythtv:

Rewrite of StreamingRingBuffer::safe_read

safe_read was based on FFmpeg's ffurl_read_complete, however when an EOF or an error is encountered, ffurl_read_complete returns the error code rather than the number of bytes read so far.
Rather than wait for FFmpeg to fix it (ref: https://ffmpeg.org/trac/ffmpeg/ticket/2537) ; work around it.
safe_read now will set errno as expected and always return a value >= 0 representing the number of bytes actually read.

Fixes #11263
(cherry picked from commit 8b8ec72b005ecf1cb9d36bb4f82469b3718fefb4)

comment:11 Changed 11 months ago by jyavenard

  • Milestone set to 0.26.1

Add Comment

Modify Ticket

Action
as closed .
The resolution will be deleted. Next status will be 'new'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.