mirror of
https://github.com/signalapp/libsignal.git
synced 2026-05-05 06:32:35 +02:00
Add MP4 format sanitizer
This MP4 format "sanitizer" currently only transforms (when necessary) outgoing media on iOS, Android, or Desktop to make it suitable for streaming playback by the recepient. In the future, it will validate and be able to either repair or reject outbound AND inbound media, to prevent malformed media from being fed to third party or OS media players. An generic io module was added to the libsignal rust bridge containing the InputStream trait, modeled loosely after Java's InputStream, which calls back into the client language to perform reads or skips. This infrastructure could potentially also be for any other future large data inputs to libsignal functions.
This commit is contained in:
@@ -42,6 +42,9 @@ public enum SignalError: Error {
|
||||
case badNicknameCharacter(String)
|
||||
case nicknameTooShort(String)
|
||||
case nicknameTooLong(String)
|
||||
case ioError(String)
|
||||
case invalidMediaInput(String)
|
||||
case unsupportedMediaInput(String)
|
||||
case callbackError(String)
|
||||
case unknown(UInt32, String)
|
||||
}
|
||||
@@ -127,6 +130,12 @@ internal func checkError(_ error: SignalFfiErrorRef?) throws {
|
||||
throw SignalError.nicknameTooShort(errStr)
|
||||
case SignalErrorCodeUsernameTooLong:
|
||||
throw SignalError.nicknameTooLong(errStr)
|
||||
case SignalErrorCodeIoError:
|
||||
throw SignalError.ioError(errStr)
|
||||
case SignalErrorCodeInvalidMediaInput:
|
||||
throw SignalError.invalidMediaInput(errStr)
|
||||
case SignalErrorCodeUnsupportedMediaInput:
|
||||
throw SignalError.unsupportedMediaInput(errStr)
|
||||
case SignalErrorCodeCallbackError:
|
||||
throw SignalError.callbackError(errStr)
|
||||
default:
|
||||
|
||||
Reference in New Issue
Block a user