Hi libobjc, good work 👍
I find one issue.
I try SGPlayer today and It works perfectly on my iPhone 6 and iPhone 6s.
But when I install demo app on iPhone 5, 5s iOS 9 and play RTMP url, this app quickly received memory warning and app crashes, only crashes when play RTMP.
I switch to use HLS url, this app play video streaming ok.
The ffmpeg player has been working great up until today when I upgraded from iOS & tvOS 11 beta 3 to beta 4. It now crashes on both iOS & tvOS (playing a server ts stream). The only error Xcode gives is 'Thread 1: EXC_BAD_ACCESS (code=2, address=0x194c50ad8)' pointing to main.m, even with 'All Exceptions' breakpoint enabled.
To double check, I ran the exact same build under beta 3 on iOS & it worked fine, I then upgraded the device to beta 4 & re-ran & it now crashes in the same way the tvOS build does.
A little bit of manual debugging seems to show its crashing when it goes to display the first frame (or around that time), possibly OpenGL/rendering related? Not sure if this is an iOS/tvOS beta issue (that Apple may fix in a future beta), or maybe a change in the api that SGPlayer will need updating to handle perhaps.
Any ideas/pointers on how to get this working would be really appreciated!
Thanks.
Some video source split the whole video to many flv segments, I tried merge it to a hls format m3u8 file, but it play failed with Error
"Error Domain=ffmpeg code : -541478725, ffmpeg msg : End of file Code=2 "(null)"
I see MPV provide an "edl protocol" to play segments like edl://f1.flv;f2.flv
Is there any similar solution for SGPlayer?
I tried merge to m3u8 format like below, but seems hls didn't accept flv video codec.
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-ALLOW-CACHE:NO
#EXT-X-TARGETDURATION:400
#EXTINF:348.859, http://samplesite/f1.flv
#EXTINF:381.301, http://samplesite/f2.flv
#EXT-X-ENDLIST
Undefined symbols for architecture arm64:
"OBJC_IVAR$_SGFFAVYUVVideoFrame.channel_pixels", referenced from:
-[SGGLTextureYUV420 updateTextureWithGLFrame:aspect:] in SGPlayer(SGGLTextureYUV420.o)
"OBJC_CLASS$_SGFFAVYUVVideoFrame", referenced from:
objc-class-ref in SGPlayer(SGGLFrame.o)
"OBJC_CLASS$_SGFFCVYUVVideoFrame", referenced from:
objc-class-ref in SGPlayer(SGGLFrame.o)
"OBJC_CLASS$_SGFFPlayer", referenced from:
objc-class-ref in SGPlayer(SGPlayerImp.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
using sgplayer mac to play douyu live flv stream on 13' retina mac pro 2015, the screen only show 1/4(left corner)
if connect to my display,it's working fine, show complete size.
update:
if not use the highest resolution the screen can't show completely,only 1/4 or less
fixed:
use hack way,
in SGGLViewController.m 220 line chage scale to 1 .like this CGFloat scale = 1;