wang-bin / fvp

Flutter video player plugin for all desktop+mobile platforms. download prebuilt examples from github actions. https://pub.dev/packages/fvp
BSD 3-Clause "New" or "Revised" License
197 stars 31 forks source link

who can play rtsp? #38

Closed xiaodusx1 closed 11 months ago

xiaodusx1 commented 1 year ago

I set as this: _controller = VideoPlayerController.networkUrl(Uri.parse('rtsp://admin:H1@192.168.2.250:554'),); but has a error: [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: PlatformException(media open error, invalid or unsupported media, null, null)

0 MdkVideoPlayerPlatform.create (package:fvp/src/video_player_mdk.dart:216:7)

#1 VideoPlayerController.initialize (package:video_player/video_player.dart:426:19)
wang-bin commented 1 year ago

what's your fvp version? paste the complete log.

xiaodusx1 commented 1 year ago

platform:macos fvp: ^0.8.0 log:

flutter: fvp.FINE: 2023-09-20 17:22:45.720020: 188784838 player4872111744 create(rtsp://admin:password@192.168.2.250:554)
flutter: mdk.INFO: 2023-09-20 17:22:45.728083: default0x169f2e520 new FrameReader...
flutter: mdk.INFO: 2023-09-20 17:22:45.728145: Registered audio backends: AudioQueue OpenAL null 
flutter: mdk.INFO: 2023-09-20 17:22:45.728171: default0x1226d9d50 new FrameReader...
flutter: mdk.INFO: 2023-09-20 17:22:45.728230: Registered audio backends: AudioQueue OpenAL null 
flutter: mdk.INFO: 2023-09-20 17:22:45.728275: 0x1226f5990mdk::Player::Player()
flutter: mdk.INFO: 2023-09-20 17:22:45.728306: default FrameReader0x169f2e520 state: 0=>0=>0, 0
flutter: mdk.INFO: 2023-09-20 17:22:45.728331: default0x169f2e520 virtual void mdk::FrameReader::stop(), current state: 0
flutter: mdk.INFO: 2023-09-20 17:22:45.728356: default FrameReader0x169f2e520 state: 0=>0=>0, 0
flutter: mdk.INFO: 2023-09-20 17:22:45.728380: default0x169f2e520 virtual void mdk::FrameReader::stop(), current state: 0
flutter: mdk.INFO: 2023-09-20 17:22:45.728404: AudioQueueStart ERROR: 0
flutter: mdk.INFO: 2023-09-20 17:22:45.728428: 0x124968a00 MediaControl.prepare(0, ...) rtsp://admin:password@192.168.2.250:554
flutter: mdk.INFO: 2023-09-20 17:22:45.728452: default 0x169f2e520 FrameReader.start(0, ...)
flutter: mdk.INFO: 2023-09-20 17:22:45.728475: default 0x169f2e520 FrameReader::update MediaStatus 0=>0X2
flutter: fvp.FINE: 2023-09-20 17:22:45.729673: 657549096 player4872111744 onMediaStatus: MediaStatus(noMedia) => MediaStatus(+loading)
flutter: mdk.INFO: 2023-09-20 17:22:45.730176: default FrameReader0x169f2e520 state: 0=>0=>1, 0
flutter: mdk.INFO: 2023-09-20 17:22:45.730223: default FrameReader0x169f2e520 state: 0=>1=>1, 0
flutter: mdk.INFO: 2023-09-20 17:22:45.730251: start frame reader thread: 0x170d5f000
flutter: mdk.WARNING: 2023-09-20 17:22:45.730335: Failed to create io for url. io: 0x0, open: false
flutter: mdk.INFO: 2023-09-20 17:22:45.730369: default 0x169f2e520 FrameReader::update MediaStatus 0X2=>0X2
flutter: mdk.INFO: 2023-09-20 17:22:45.730395: before avformat_open_input. io: 0x0(/pb: 0x0, url: rtsp://admin:password@192.168.2.250:554
flutter: mdk.INFO: 2023-09-20 17:22:45.730421: [FFmpeg:tcp] Connection to tcp://192.168.2.250:554?timeout=0 failed: Operation not permitted
flutter: mdk.INFO: 2023-09-20 17:22:45.730450: Error avrt::avformat_open_input(&fmtctx_, ffmpeg::from_file_uri(in.c_str()), fmt, &dict) @209 /Users/runner/work/mdk-sdk/mdk-sdk/mdk/ffmpeg/plugin/FFmpegPacketIO.cpp: (0xffffffff) Operation not permitted
flutter: mdk.INFO: 2023-09-20 17:22:45.730476: 0x170d5f000default 0x169f2e520 bool mdk::FrameReader::update(mdk::MediaStatus) @1055: reset status_mask
flutter: mdk.INFO: 2023-09-20 17:22:45.730500: default 0x169f2e520 FrameReader::update MediaStatus 0X2=>0X80000000
flutter: fvp.FINE: 2023-09-20 17:22:45.730547: 657549096 player4872111744 onMediaStatus: MediaStatus(+loading) => MediaStatus(+invalid)
[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: PlatformException(media open error, invalid or unsupported media, null, null)
#0      MdkVideoPlayerPlatform.create (package:fvp/src/video_player_mdk.dart:216:7)
<asynchronous suspension>
#1      VideoPlayerController.initialize (package:video_player/video_player.dart:438:19)
<asynchronous suspension>

flutter: mdk.WARNING: 2023-09-20 17:22:45.733390: reader open error
flutter: mdk.INFO: 2023-09-20 17:22:45.733433: 0x170d5f000default 0x169f2e520 bool mdk::FrameReader::update(mdk::MediaStatus) @1055: reset status_mask
flutter: mdk.INFO: 2023-09-20 17:22:45.733478: default 0x169f2e520 FrameReader::update MediaStatus 0X80000000=>0X80000000
flutter: mdk.INFO: 2023-09-20 17:22:45.733566: 0x124968a00 virtual void mdk::MediaControlPush::setState(mdk::PlaybackState)@969 requested state 2=>0, current state 0. status: 0X80000000
flutter: mdk.INFO: 2023-09-20 17:22:45.733611: default FrameReader0x169f2e520 state: 0=>1=>0, 0
flutter: mdk.INFO: 2023-09-20 17:22:45.733638: default0x169f2e520 virtual void mdk::FrameReader::stop(), current state: 0
flutter: mdk.INFO: 2023-09-20 17:22:45.733662: 0x169f2e520 virtual bool mdk::FrameReaderImpl::unload(), current status 0x80000000, invalid: 0x80000000, loading: 0, loaded: 0, buffering: 0, seeking: 0, prepared: 0, EOF: 0
flutter: mdk.INFO: 2023-09-20 17:22:45.733686: AudioQueueStart ERROR: 0
flutter: mdk.INFO: 2023-09-20 17:22:45.733709: 0x1226f5990virtual mdk::Player::~Player()64
flutter: mdk.INFO: 2023-09-20 17:22:45.733730: setNext from -1 url:
flutter: mdk.INFO: 2023-09-20 17:22:45.733753: default FrameReader0x169f2e520 state: 0=>0=>0, 0
flutter: mdk.INFO: 2023-09-20 17:22:45.733776: default0x169f2e520 virtual void mdk::FrameReader::stop(), current state: 0
flutter: mdk.INFO: 2023-09-20 17:22:45.733799: mdk::MediaPlayer::Private::~Private()
flutter: mdk.INFO: 2023-09-20 17:22:45.733819: 0x124968a00 virtual void mdk::MediaControlPush::setState(mdk::PlaybackState)@969 requested state 0=>0, current state 0. status: 0X80000000
flutter: mdk.INFO: 2023-09-20 17:22:45.733849: AudioQueueStart ERROR: 0
flutter: mdk.INFO: 2023-09-20 17:22:45.733869: 0x1249f0400 virtual void mdk::MediaControlPush::setState(mdk::PlaybackState)@969 requested state 0=>0, current state 0. status: 0
flutter: mdk.INFO: 2023-09-20 17:22:45.733892: AudioQueueStart ERROR: 0
flutter: mdk.INFO: 2023-09-20 17:22:45.733911: default0x1226d9d50 deleting FrameReader...
flutter: mdk.INFO: 2023-09-20 17:22:45.735403: player is destroyed 
flutter: mdk.INFO: 2023-09-20 17:22:45.735446: mdk::VideoRenderer::Private::~Private() @125
wang-bin commented 1 year ago

I think you can't play this rtsp in ffplay and mpv

xiaodusx1 commented 1 year ago

I think you can't play this rtsp in ffplay and mpv

doesnt support macos?I see some " Operation not permitted"

wang-bin commented 1 year ago

maybe something wrong in your rtsp. rtsp is supported on all platforms. you can test it using ffplay, vlc

xiaodusx1 commented 1 year ago

maybe something wrong in your rtsp. rtsp is supported on all platforms. you can test it using ffplay, vlc

yes,It work on ios/windows,also vlc. but not work in macos.of course, I change the rtsp passwork here.

wang-bin commented 1 year ago

have you tested ffplay and mpv on mac?

xiaodusx1 commented 1 year ago

yes,I tested ffplay , it work fine .I think maybe fvp want use system's ffplay to play,and Operation not permitted?

wang-bin commented 1 year ago

yes,I tested ffplay , it work fine .I think maybe fvp want use system's ffplay to play,and Operation not permitted?

show me ffplay log. what about ffplay from https://sourceforge.net/projects/avbuild/files/macOS/ffmpeg-master-macOS-lite-lto.tar.xz/download ?

fvp does not use ffplay, but ffmpeg libraries.

xiaodusx1 commented 1 year ago

Class AVFFrameReceiver is implemented in both /opt/homebrew/Cellar/ffmpeg/6.0/lib/libavdevice.60.1.100.dylib (0x1046d4370) and /Users/xiaodusx1/myapp/build/macos/Build/Products/Debug/aboutxml.app/Contents/Frameworks/mdk.framework/Versions/A/libffmpeg.6.dylib (0x105fd0cf0). One of the two will be used. Which one is undefined.

xiaodusx1 commented 1 year ago

ffplay version 6.0 Copyright (c) 2003-2023 the FFmpeg developers built with Apple clang version 14.0.3 (clang-1403.0.22.14.1) configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/6.0 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-audiotoolbox --enable-neon libavutil 58. 2.100 / 58. 2.100 libavcodec 60. 3.100 / 60. 3.100 libavformat 60. 3.100 / 60. 3.100 libavdevice 60. 1.100 / 60. 1.100 libavfilter 9. 3.100 / 9. 3.100 libswscale 7. 1.100 / 7. 1.100 libswresample 4. 10.100 / 4. 10.100 libpostproc 57. 1.100 / 57. 1.100 Input #0, rtsp, from 'rtsp://admin:password@192.168.2.250:554':
Metadata: title : Media Presentation Duration: N/A, start: 0.000000, bitrate: N/A Stream #0:0: Video: h264 (Main), yuv420p(progressive), 1280x720, 10 fps, 10 tbr, 90k tbn Stream #0:1: Audio: pcm_alaw, 8000 Hz, mono, s16, 64 kb/s 32.26 A-V: -0.017 fd= 4 aq= 19KB vq= 79KB sq= 0B f=0/0

wang-bin commented 1 year ago

Class AVFFrameReceiver is implemented in both /opt/homebrew/Cellar/ffmpeg/6.0/lib/libavdevice.60.1.100.dylib (0x1046d4370) and /Users/xiaodusx1/myapp/build/macos/Build/Products/Debug/aboutxml.app/Contents/Frameworks/mdk.framework/Versions/A/libffmpeg.6.dylib (0x105fd0cf0). One of the two will be used. Which one is undefined.

not related. ignore it

wang-bin commented 1 year ago

what about this ffplay https://sourceforge.net/projects/avbuild/files/macOS/ffmpeg-master-macOS-lite-lto.tar.xz/download

wang-bin commented 1 year ago

any update?