Results 1 to 16 of 16

Thread: Phonon and filters

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Join Date
    Mar 2007
    Location
    Ukraine, Odessa
    Posts
    140
    Thanks
    15
    Thanked 11 Times in 10 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Windows

    Default Phonon and filters

    Hi everybody

    In the application I'm writing I need to link filters in a chain to output video stream. One of the filters is a codec that decrypts an XOR-ed file. I need to link these filters on two systems (Windows and Mac OS X).

    So the question is are there any methods to explicitly link these filters with Phonon ?
    If there aren't phonon methods to do it are there any DirectShow and QuickTime methods to do so?
    C++ & AMD forever

  2. #2
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Phonon and filters

    So first you have a xor encrypted file, which should after decryption be subject to regular video decoding?

    Phonon::MediaSource takes QIODevice pointer as its argument, so you can create a QIODevice that will do the decryption on the fly. I did it once for RC4 and it's very simple. There is an article on QQ that deals with the subject.

  3. #3
    Join Date
    Mar 2007
    Location
    Ukraine, Odessa
    Posts
    140
    Thanks
    15
    Thanked 11 Times in 10 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Windows

    Default Re: Phonon and filters

    Thanks for your reply Wysota.

    But the problem is that if DirectShow links filters one can write a codec that will just link on the top of my codec and dump all decrypted data to a file. My codec is a DRM codec so the aim is to protect data (though personally I think that DRM is stupid it's my job )
    C++ & AMD forever

  4. #4
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Phonon and filters

    Where in the stream does the codec reside?

  5. #5
    Join Date
    Mar 2007
    Location
    Ukraine, Odessa
    Posts
    140
    Thanks
    15
    Thanked 11 Times in 10 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Windows

    Default Re: Phonon and filters

    AsyncReader->My filter->Haali Media Splitter ( splits stream to audio and video)->something...->render
    C++ & AMD forever

  6. #6
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Phonon and filters

    So where does the actual frame decoding go?

  7. #7
    Join Date
    Mar 2007
    Location
    Ukraine, Odessa
    Posts
    140
    Thanks
    15
    Thanked 11 Times in 10 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Windows

    Default Re: Phonon and filters

    What do you mean ?
    C++ & AMD forever

  8. #8
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Phonon and filters

    Where are the video and audio streams decoded into single images and audio chunks? Before or after your DRM thing?

  9. #9
    Join Date
    Mar 2007
    Location
    Ukraine, Odessa
    Posts
    140
    Thanks
    15
    Thanked 11 Times in 10 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Windows

    Default Re: Phonon and filters

    They are decoded after my DRM filter. My filter is a low level one and it can only read raw data from asyncreader end decode them into same raw data but unencrypted.
    C++ & AMD forever

  10. #10
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: Phonon and filters

    So how does that make my solution from post #2 invalid? If someone has access to decrypted frames before sending them to the video decoder, using a crafted codec will allow one to intercept the video stream anyway...

  11. #11
    Join Date
    Mar 2007
    Location
    Ukraine, Odessa
    Posts
    140
    Thanks
    15
    Thanked 11 Times in 10 Posts
    Qt products
    Qt4
    Platforms
    MacOS X Windows

    Default Re: Phonon and filters

    Yes but if I link filters manually it won't be possible
    C++ & AMD forever

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Digia, Qt and their respective logos are trademarks of Digia Plc in Finland and/or other countries worldwide.