CYFROWY BARON • PROGRAMOWANIE • Zobacz wątek - rad studio 10.3, problem z mediaplayer

rad studio 10.3, problem z mediaplayer

problemy z tworzeniem aplikacji graficznych oraz audio i wideo

rad studio 10.3, problem z mediaplayer

Nowy postprzez Besciak » wtorek, 7 kwietnia 2020, 16:31

Cześć Wszystkim,

Mimo swoich lat, chciałem sam dla siebie pouczyć się c++ i korzystając z okazji zainstalowałem rad 10.3 w wersji trial :) w mojej apce, chciałbym wykorzystać komponent mediaplayer do odsłuchu radia internetowego. Krótko mówiąc, chciałbym umieścić sobie kilka klawiszy na jednej formie i każdy z nich uruchamiał by inne radio ( stream ) . I tu zaczyna się problem, ponieważ same mp3, które znajdują się na dysku można odtworzyć bez problemu, tak stream, już nie :

KOD cpp:     UKRYJ  
MediaPlayer1->FileName = ("http://......katowice64.m3u");
MediaPlayer1->Open();
MediaPlayer1->Play();


czy też
KOD cpp:     UKRYJ  
MediaPlayer1->FileName = ("http://......katowice64.pls");
MediaPlayer1->Open();
MediaPlayer1->Play();


Zawsze ten sam komunikat - NO MVI Device open, niezależnie od tego jaki adres wpiszę. Jako mega początkujący, proszę o pomoc. Dziękuje i Pozdrawiam.Damian
Avatar użytkownika
Besciak
Bladawiec
Bladawiec
 
Posty: 4
Dołączył(a): sobota, 28 marca 2020, 16:49
Podziękował : 0
Otrzymał podziękowań: 0
System operacyjny: win10 / linux
Kompilator: c++ Builder 6.0
Gadu Gadu: 0
    WindowsChrome

Re: rad studio 10.3, problem z mediaplayer

Nowy postprzez polymorphism » wtorek, 7 kwietnia 2020, 20:22

A ta kontrolka jest w ogóle w stanie odtwarzać streamy internetowe?

Chyba biblioteka BASS daję taką możliwość.
C++ Reference - opis wszystkich klas STL-a i funkcji C.
Avatar użytkownika
polymorphism
Doświadczony Programista ● Moderator
Doświadczony Programista ● Moderator
 
Posty: 2263
Dołączył(a): piątek, 19 grudnia 2008, 13:04
Podziękował : 0
Otrzymał podziękowań: 210
System operacyjny: Windows 8.1
Windows 10
Linux Mint 19
Kompilator: Visual Studio
Visual Studio Code
MSYS2 (MinGW, clang)
g++
clang
Gadu Gadu: 0
    UbuntuFirefox

Re: rad studio 10.3, problem z mediaplayer

Nowy postprzez Besciak » wtorek, 7 kwietnia 2020, 22:31

Ja się nie upieram przy tym komponencie, jeśli jest coś lepszego, proszę o informacje wraz z wskazówką czego szukać w google. Dziękuje,
Avatar użytkownika
Besciak
Bladawiec
Bladawiec
 
Posty: 4
Dołączył(a): sobota, 28 marca 2020, 16:49
Podziękował : 0
Otrzymał podziękowań: 0
System operacyjny: win10 / linux
Kompilator: c++ Builder 6.0
Gadu Gadu: 0
    WindowsChrome

Re: rad studio 10.3, problem z mediaplayer

Nowy postprzez polymorphism » wtorek, 7 kwietnia 2020, 23:44

Wspomniałem o bibliotece BASS. Jest dość prosta w użyciu.
C++ Reference - opis wszystkich klas STL-a i funkcji C.
Avatar użytkownika
polymorphism
Doświadczony Programista ● Moderator
Doświadczony Programista ● Moderator
 
Posty: 2263
Dołączył(a): piątek, 19 grudnia 2008, 13:04
Podziękował : 0
Otrzymał podziękowań: 210
System operacyjny: Windows 8.1
Windows 10
Linux Mint 19
Kompilator: Visual Studio
Visual Studio Code
MSYS2 (MinGW, clang)
g++
clang
Gadu Gadu: 0
    WindowsFirefox

Re: rad studio 10.3, problem z mediaplayer

Nowy postprzez lukagrom » środa, 8 kwietnia 2020, 14:35

Za stackoverflow tu jest omówienie tego problemu dla Delphi:

When setting the TMediaPlayer.FileName property, it simply extracts the file extension from the end of the specified path (everything after, and including, the final . character), locates a registered codec for that extension, and then tells the codec to load the FileName value as-is. The codec returns a TMedia object which TMediaPlayer then uses to play/control the media as needed. By default, FireMonkey only implements TMedia classes for local files.

You would have to implement a custom TMedia-derived class to handle streaming media, and a custom TCustomMediaCodec-derived class (registered for a custom file extension using TMediaCodecManager.RegisterMediaCodecClass()) to create your TMedia class. Then you can assign a URL to TMediaPlayer.FileName that ends with your extension (the real URL would not, so your codec would have to strip it off before accessing the URL), eg:



Wynika, że chyba wszystko sprowadza się do zadeklarowania tej metody:
KOD cpp:     UKRYJ  
__classmethod void __fastcall RegisterMediaCodecClass(const System::UnicodeString Extension, const System::UnicodeString Description, TMediaType MediaType, TCustomMediaCodecClass MediaCodecClass)
 
Avatar użytkownika
lukagrom
Intelektryk
Intelektryk
 
Posty: 123
Dołączył(a): wtorek, 1 stycznia 2013, 14:54
Podziękował : 9
Otrzymał podziękowań: 5
System operacyjny: Windows Vista
Kompilator: C++ Builder 10.1 Starter
Gadu Gadu: 0
    Windows VistaChrome

Re: rad studio 10.3, problem z mediaplayer

Nowy postprzez polymorphism » czwartek, 9 kwietnia 2020, 10:22

Oj, chyba to nie takie proste.
C++ Reference - opis wszystkich klas STL-a i funkcji C.
Avatar użytkownika
polymorphism
Doświadczony Programista ● Moderator
Doświadczony Programista ● Moderator
 
Posty: 2263
Dołączył(a): piątek, 19 grudnia 2008, 13:04
Podziękował : 0
Otrzymał podziękowań: 210
System operacyjny: Windows 8.1
Windows 10
Linux Mint 19
Kompilator: Visual Studio
Visual Studio Code
MSYS2 (MinGW, clang)
g++
clang
Gadu Gadu: 0
    Windows 7Firefox

Re: rad studio 10.3, problem z mediaplayer

Nowy postprzez lukagrom » czwartek, 9 kwietnia 2020, 11:47

To się realizuje przy pomocy TMediaCodecManager, który wywodzi się z linii Delphi i w dokumentacji zaiplementowany jest tak:

KOD cpp:     UKRYJ  
class PASCALIMPLEMENTATION TMediaCodecManager : /*[[sealed]]*/ public System::TObject


i wymaga dołączenie biblioteki:
KOD cpp:     UKRYJ  
#include <FMX.Media.hpp>

co w moim śrdodowisku od razu wywala błędy:

[bcc32 Error] m_TMedia2.h(12): E2015 Ambiguity between 'Fmx::Forms::TForm' and 'Vcl::Forms::TForm'
Full parser context
m_TMedia2.cpp(7): #include m_TMedia2.h
m_TMedia2.h(11): class TForm1

Zakładam, że bibioteka wymaga innej "współpracy". Zamiast na tradycyjnego VCL-u oczekuje FMX, czyli platformy FireMonkey. Przynajmniej tak mi się wydaje. Poza tym czytałem, że w użyciu tej biblioteki wymagana jest częściowo składna "pascalowska", co już mnie całkowicie zniechęca do tego tematu.
Avatar użytkownika
lukagrom
Intelektryk
Intelektryk
 
Posty: 123
Dołączył(a): wtorek, 1 stycznia 2013, 14:54
Podziękował : 9
Otrzymał podziękowań: 5
System operacyjny: Windows Vista
Kompilator: C++ Builder 10.1 Starter
Gadu Gadu: 0
    Windows VistaChrome

Re: rad studio 10.3, problem z mediaplayer

Nowy postprzez polymorphism » czwartek, 9 kwietnia 2020, 12:20

Jedną z wielu rzeczy, które mnie irytowały w C++ Builderze, to właśnie ten Pascal/Delphi. Ale co się dziwić w końcu cały VCL jest w nim napisany.
C++ Reference - opis wszystkich klas STL-a i funkcji C.
Avatar użytkownika
polymorphism
Doświadczony Programista ● Moderator
Doświadczony Programista ● Moderator
 
Posty: 2263
Dołączył(a): piątek, 19 grudnia 2008, 13:04
Podziękował : 0
Otrzymał podziękowań: 210
System operacyjny: Windows 8.1
Windows 10
Linux Mint 19
Kompilator: Visual Studio
Visual Studio Code
MSYS2 (MinGW, clang)
g++
clang
Gadu Gadu: 0
    UbuntuFirefox

Re: rad studio 10.3, problem z mediaplayer

Nowy postprzez Besciak » środa, 22 kwietnia 2020, 18:24

W Delphi wszystko działa z palca, natomiast w c++ ciągle pod górkę. :(
Avatar użytkownika
Besciak
Bladawiec
Bladawiec
 
Posty: 4
Dołączył(a): sobota, 28 marca 2020, 16:49
Podziękował : 0
Otrzymał podziękowań: 0
System operacyjny: win10 / linux
Kompilator: c++ Builder 6.0
Gadu Gadu: 0
    WindowsChrome


  • Podobne tematy
    Odpowiedzi
    Wyświetlone
    Ostatni post

Powrót do Aplikacje multimedialne, graficzne

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 2 gości

cron